@charset "utf-8";
form#mail_form {
	width : 100%;
	margin : 0 auto 280px 0;
	padding : 10px 0;
	background : #ffffff;
	font-family: "Noto Sans Japanese", sans-serif;
}
form#mail_form dl {
	width : 100%;
	margin : 0 auto;
	overflow : hidden;
}
form#mail_form dl dt {
	clear : both;
	width : 30%;
	float : left;
	border-top : 1px solid #cccccc;
	padding : 15px 0;
	text-align : right;
	overflow : hidden;
}
form#mail_form dl dd {
	width : 70%;
	float : right;
	border-top : 1px solid #cccccc;
	padding : 15px 0 15px 5%;
}
form#mail_form dl dt:first-child, form#mail_form dl dt:first-child+dd {
	border : none;
}
form#mail_form dl dt span {
	display : block;
	font-size : 75%;
	color : #999999;
}

form#mail_form .contract {
	width:100%;
}

form#mail_form .contract span {
	font-weight:bold;
	display:block;
}
form#mail_form .contract > .con_box {
	padding:15px;
	box-sizing:border-box;
	border:1px solid #CCC;
	font-size:0.85em;
}


/* -- for JavaScript ここから -------------------------------------------------------------------------------- */

form#mail_form dl dt span.required, form#mail_form dl dt span.optional {
	display : inline-block;
	float : left;
	color : #ffffff;
	line-height : 1;
	padding : 8px 9px;
	border-radius : 3px;
}
form#mail_form dl dt span.required {
	background-color : #d9534f;
	border : 1px solid #d43f3a;
}
form#mail_form dl dt span.optional {
	background-color : #CCCCCC;
	border : 1px solid #CCCCCC;
}
form#mail_form dl dd span.error_blank, form#mail_form dl dd span.error_format, form#mail_form dl dd span.error_match {
	display : block;
	color : #ff0000;
	margin-top : 3px;
}
span.error_blank_end {
	display : block;
	color : #ff0000;
	margin-top : 3px;
	text-align:center;
}


span.loading {
	width : 50px;
	height : 50px;
	border-radius : 50%;
	border-top : 5px solid rgba( 255, 255, 255, 0.2 );
	border-right : 5px solid rgba( 255, 255, 255, 0.2 );
	border-bottom : 5px solid rgba( 255, 255, 255, 0.2 );
	border-left : 5px solid #ffffff;
	-webkit-transform : translateZ( 0 );
	-ms-transform : translateZ( 0 );
	transform : translateZ( 0 );
	-webkit-animation : load-circle 1.0s linear infinite;
	animation : load-circle 1.0s linear infinite;
	position : absolute;
	top : 50%;
	left : 50%;
	margin-top : -25px;
	margin-left : -25px;
}
 @-webkit-keyframes load-circle {
 0% {
 -webkit-transform : rotate( 0deg );
 transform : rotate( 0deg );
}
 100% {
 -webkit-transform : rotate( 360deg );
 transform : rotate( 360deg );
}
}
 @keyframes load-circle {
 0% {
 -webkit-transform : rotate( 0deg );
 transform : rotate( 0deg );
}
 100% {
 -webkit-transform : rotate( 360deg );
 transform : rotate( 360deg );
}
}
/* -- for JavaScript ここまで -------------------------------------------------------------------------------- */


form#mail_form input[type="text"], form#mail_form input[type="email"], form#mail_form input[type="tel"] {
	max-width : 90%;
	height : 2.5em;
	padding : 2px 2%;
	border : 1px solid #cccccc;
	border-radius : 3px;
	background : #fafafa;
	-webkit-appearance : none;
	font-size : 100%;
	font-family : inherit;
  box-sizing: border-box;
}
form#mail_form input[type="text"]:focus, form#mail_form input[type="email"]:focus, form#mail_form input[type="tel"]:focus, form#mail_form textarea:focus {
	box-shadow : 0px 0px 5px #55ccff;
	border : 1px solid #55ccff;
	background : #ffffff;
}
form#mail_form ul li input[type="radio"], form#mail_form ul li input[type="checkbox"] {
	margin-right : 10px;
	margin-top : 7px;
	padding:5px 0;
}
form#mail_form ul li:first-child input[type="radio"], form#mail_form ul li:first-child input[type="checkbox"] {
	margin-top : 0px;
}
form#mail_form select {
	font-size : 100%;
	font-family : inherit;
	margin-top : 10px;
	border : 1px solid #cccccc;
	padding : 2px 2%;
	border-radius : 3px;
	background : #fafafa;
}
form#mail_form textarea {
	display : block;
	width : 90%;
	max-width : 90%;
	height : 200px;
	padding : 2px 2%;
	resize : vertical;
	border : 1px solid #cccccc;
	border-radius : 3px;
	background : #fafafa;
	-webkit-appearance : none;
	font-size : 100%;
	font-family : inherit;
}
form#mail_form ul {
	list-style-type : none;
}
form#mail_form ul li {
	margin-bottom:10px;
}

form#mail_form ul li label:hover {
	cursor : pointer;
}

.app_div li {
  float: left;
  margin-right: 15px;
}

/* input要素をSATSUGAI */
label input[type="radio"],
label input[type="checkbox"]  {
    display: none;
}


label input[type="radio"]:checked + span,
label input[type="checkbox"]:checked + span {
    background-color: #fffaaa;
}
label span {
    display: inline-block;
    position: relative;
    padding: 7px 10px 7px 39px;
    border-radius: 4px;
    background-color: #F3F3F3;
    cursor: pointer;
    color: #515151;
}

/* checkbox チェック背景 */
label span::before {
    content: "";
    position: absolute;
    width: 20px;
    height: 20px;
    top: calc(50% - 10px); /* 10px = 20 / 2 px */
    left: 10px;
    display: block;
    background: #fff;
    border-radius: 4px;
}
/* checkbox チェックマーク */
label span::after {
    content: "";
    position: absolute;
    width: 6px;
    height: 10px;
    left: 15px;
    top: calc(50% - 8px);
    border-right: 3px solid #fff;
    border-bottom: 3px solid #fff;
    transform: rotate(45deg); /* 回転させてチェックマーク風にする */
    display: block;
    opacity: 0; /* チェック前は透明にしておく */
}



/* check後、色を変えたりする */
label input[type="radio"]:checked,
label input[type="checkbox"]:checked {
    background-color: #fffaaa;
}
label input[type="radio"]:checked + span,
label input[type="checkbox"]:checked + span {
    background-color: #fffaaa;
}
label input[type="radio"]:checked + span::before,
label input[type="checkbox"]:checked + span::before {
    background-color: #ed6103;
}
label input[type="radio"]:checked + span::after,
label input[type="checkbox"]:checked + span::after {
    opacity: 1; /*　透明化を解除 */
}


.underbar {
  border-bottom: 1px dotted #DBDBDB;
  margin: 5px 0;
  width: 100%;
}
.oubo_guid table td ul {
  margin: 0 !important;
  padding: 0 !important;
}
.oubo_guid table td > .scedule_type {
    padding: 4px 15px;
    margin-top: 15px;
    margin-bottom: 5px;
    background-color: #E7E7E7;
    box-sizing: border-box;
    width: 100%;
}
.kengaku li {
  _padding-left: 8px;
  line-height: 2;
}


form#mail_form input#company {
	width : 60%;
}
form#mail_form input#name_1, form#mail_form input#name_2, form#mail_form input#read_1, form#mail_form input#read_2, form#mail_form input#postal, form#mail_form input#phone, form#mail_form input#schedule {
	width : 30%;
	margin-right: 8px;
  _float: left;
}
form#mail_form input#mail_address, form#mail_form input#mail_address_confirm {
	width : 80%;
}
form#mail_form input#postal+a {
	display : inline-block;
	padding : 9px 15px;
	vertical-align : middle;
	line-height : 1;
	background : #5bc0de;
	border : 1px solid #46b8da;
	border-radius : 3px;
	color : #ffffff;
	font-family : inherit;
	text-decoration : none;
	position : relative;
	top : -1px;
}
form#mail_form input#postal+a:hover {
	cursor : pointer;
	background : #31b0d5;
	border : 1px solid #269abc;
}
form#mail_form input#address {
	width : 90%;
}
form#mail_form input[type="submit"] {
	font-size: 1.3em;
	border: none;
	background-color: #F34F25;
	color: #fff;
	display: block;
	margin: 30px auto 8px auto;
	max-width: 315px;
	padding: 20px 0;
	width: 100%;
	-webkit-appearance: button;
	cursor: pointer;
	border-radius: 10px;
}
form#mail_form input[type="submit"]:hover {
	cursor : pointer;
	background : #449d44;
}
form#mail_form input#form_submit_button {
}
form#mail_form .job_aria {
	padding: 4px 15px;
	margin-bottom: 8px;
	background-color: #E7E7E7;
	box-sizing: border-box;
	width: 100%;
}
form#mail_form .job_aria_line {
	border-bottom: 1px solid #E7E7E7;
	width: 100%;
	margin: 8px 0;
}


/* --responsive----------------------------------------------------------------------------------------------------------------- */

/* 640pixel start */
@media screen and ( max-width : 640px ) {
form#mail_form {
	width : 95%;
	margin : 0 auto 350px auto;
}
form#mail_form dl {
	overflow : visible;
}
form#mail_form dl dt {
	width : auto;
	float : none;
	text-align : left;
	padding : 10px 0 5px;
	font-weight : bold;
}
form#mail_form dl dd {
	width : auto;
	float : none;
	border-top : none;
	padding : 0px 0 13px 0px;
}
form#mail_form dl dt span {
	font-weight : normal;
}
/* -- for JavaScript ここから -------------------------------------------------------------------------------- */

form#mail_form dl dt span.required, form#mail_form dl dt span.optional {
	margin-right : 1em;
	margin-bottom : 2em;
}
/* -- for JavaScript ここまで -------------------------------------------------------------------------------- */

form#mail_form input[type="text"], form#mail_form input[type="email"], form#mail_form input[type="tel"] {
	margin-top : 0px;
}
form#mail_form select {
	margin-top : 0;
}
form#mail_form input#phone, form#mail_form input#schedule {
	width : 50%;
}
}
/* 640pixel end */

::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color:#ccc;
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
   color:#ccc;
}
::placeholder{ /* Others */
 color:#ccc
}

