@charset 'UTF-8';

/*  contact
--------------------------------------- */

.contact {
max-width: 900px;
margin: 0 auto;
box-sizing: border-box;
}

.contact h2 {
margin: 0 0 35px;
padding: 65px 0 18px;
color: #333;
font-size: 30px;
font-weight: bold;
text-align: center;
background: url("/ja/assets/img/bg_h2_01.png") no-repeat center bottom;
}

.contact .lead {
margin: 0 0 15px;
font-size: 14px;
line-height: 1.58;
}

.contact .txtList {
padding: 0 15px 18px;
}

.contact .txtList li {
margin: 0 0 2px;
padding: 0 0 0 28px;
font-size: 14px;
line-height: 1.58;
background: url("/ja/assets/img/ico_arw_07.png") no-repeat left 3px;
background-size: 9px auto;
}

.contact .red {
color: #fe0000;
}

.contact .right {
margin: 0 0 34px;
font-size: 14px;
line-height: 1.58;
text-align: right;
}

.contact .formBox {
max-width: 600px;
margin: 0 auto;
}

.contact .formBox dl dt {
margin: 0 0 5px;
font-size: 18px;
font-weight: bold;
}

.contact .formBox dl dd {
margin: 0 0 25px;
}

.contact.confirm .formBox dl dd {
margin: 0 0 30px;
padding: 5px 0 0 1em;
color: #333;
font-size: 16px;
line-height: 1.375;
}

.contact .formBox dl .err {
margin: -20px 0 25px;
color: #fe0000;
font-size: 14px;
font-weight: bold;
}

.contact .formBox dl .mb10 {
margin: 0 0 10px;
}

.contact.confirm .formBox dl .mb10 {
margin: 0 0 10px;
}

.contact .formBox dl dd input {
-moz-appearance: none;
-webkit-appearance: none;
appearance: none;
width: 100%;
padding: 10px 14px;
font-size: 16px;
background: #fff;
border: 1px solid #333;
box-sizing: border-box;
}

/*

.contact .formBox dl dd input[type="checkbox"] {
display: none;
}

*/



.contact .formBox dl dd label {
position: relative;
margin: 0 18px 0 0;
padding: 0 32px 0 0;
font-size: 16px;
line-height: 1.375;
vertical-align: middle;
}
/*
.contact .formBox dl dd label:after {
content: '';
position: absolute;
top: 0;
left: 0;
width: 22px;
height: 22px;
border: 1px solid #333;
box-sizing: border-box;
}
*/

.contact .formBox dl dd .bgerr + label:after {
font-size: 16px;
background-color: #fff2f2;
}

.contact .formBox dl dd input[type="checkbox"]:checked + label:after {
background: url("/ja/assets/img/ico_checkbox.png") no-repeat center;
background-size: 100% auto;
}

.contact .formBox dl dd .yubin {
width: 180px;
}

.contact .formBox dl dd select {
-moz-appearance: none;
-webkit-appearance: none;
appearance: none;
width: 180px;
padding: 10px 14px;
font-size: 16px;
background: #fff url("/ja/assets/img/ico_arw_select.png") no-repeat right center;
border: 1px solid #333;
box-sizing: border-box;
}

.contact .formBox dl dd textarea {
-moz-appearance: none;
-webkit-appearance: none;
appearance: none;
width: 100%;
height: 180px;
padding: 10px 14px;
font-size: 16px;
background: #fff;
border: 1px solid #333;
box-sizing: border-box;
}

.contact .formBox dl dd span {
margin: 0 5px 0 0;
font-size: 16px;
vertical-align: middle;
}

.contact .formBox .note {
margin: -15px 0 15px;
font-size: 12px;
line-height: 1.59;
}

.contact .formBox .type {
margin: -5px 0 25px;
font-size: 14px;
line-height: 2;
}

.contact .formBox ul {
display: flex;
flex-wrap: wrap;
}

.contact .formBox ul li {
margin: 0 0 15px;
}

.contact .formBox ul li:nth-child(odd) {
width: 286px;
}

.contact .formBox ul li:nth-child(even) {
width: calc(100% - 286px);
}

.contact .formBox ul li.longCK {
width: 100%;
}


.contact .formBox ul li input {
width: 16px;
height: 16px;
margin: 0 7px 0 0;
vertical-align: middle;
}

.contact .formBox ul li label {
font-size: 14px;
line-height: 1.15;
vertical-align: middle;
}

.contact .formBox .link {
margin: 0 0 25px;
}

.contact .formBox .link a {
text-decoration: underline;
}

.contact .formBox .btnBox {
display: flex;
justify-content: center;
padding: 35px 0 60px;
}

.contact .formBox .btnBox p {
width: 162px;
margin: 0 7px;
text-align: center;
}

.contact .formBox .btnBox .submit input {
-moz-appearance: none;
-webkit-appearance: none;
appearance: none;
width: 100%;
padding: 11px 0;
color: #fff;
font-size: 16px;
font-weight: bold;
background: #144996;
border: none;
box-sizing: border-box;
transition: 0.3s all;
}

.contact .formBox .btnBox .cancel a {
display: block;
padding: 10px 0;
color: #144996;
font-size: 16px;
font-weight: bold;
border: 1px solid #144996;
box-sizing: border-box;
transition: 0.3s all;
}

.contact .formBox .btnBox .back input {
-moz-appearance: none;
-webkit-appearance: none;
appearance: none;
width: 100%;
padding: 10px 0;
color: #144996;
font-size: 16px;
font-weight: bold;
background: #fff;
border: 1px solid #144996;
box-sizing: border-box;
transition: 0.3s all;
}

.contact .formBox .btnBox p a:hover ,
.contact .formBox .btnBox p input:hover {
opacity: 0.7;
cursor: pointer;
}


.contact .compBox {
padding: 55px 0 60px;
text-align: center;
border-top: 1px solid #ccc;
border-bottom: 1px solid #ccc;
}

.contact.complete h3 {
margin: 0 0 35px;
padding: 0;
color: #333;
font-size: 25px;
font-weight: bold;
border-bottom: none;
}

.contact .compBox .btn {
width: 193px;
margin: 0 auto;
}

.contact .compBox .btn a {
display: block;
color: #144996;
font-size: 16px;
font-weight: bold;
line-height: 2.6875;
border: 1px solid #144a97;
}


/*  for contact form 7 --------------- */

.contact .formBox span.wpcf7-radio {
display: flex;
flex-wrap: wrap;
}

.contact .formBox span.wpcf7-radio span.wpcf7-list-item {
margin: 0 0 15px;
}

.contact .formBox span.wpcf7-radio span.wpcf7-list-item:nth-child(odd) {
width: 246px;
}

.contact .formBox span.wpcf7-radio span.wpcf7-list-item:nth-child(even) {
width: calc(100% - 246px);
}

.contact .formBox span.wpcf7-radio span.wpcf7-list-item input {
width: 16px;
height: 16px;
margin: 0 7px 0 0;
vertical-align: middle;
}

.contact .formBox span.wpcf7-radio span.wpcf7-list-item label {
font-size: 14px;
line-height: 1.15;
vertical-align: middle;
}

.contact .formBox dl dd span.wpcf7-radio label {
position: relative;
margin: 0 18px 0 0;
padding: 0;
font-size: 16px;
line-height: 1.375;
vertical-align: middle;
}

.contact .formBox dl dd span.wpcf7-radio label:after {
display: none;
}

.contact .formBox dd.postalTxt {
font-size: 14px;
margin-bottom: 0px;
}

.contact .formBox dd.postalTxt input {
margin-bottom: 5px;
}

.contact .formBox input.postal,
.contact .formBox input#zip,
.contact .formBox input#pref,
.contact .formBox input#establish,
.contact .formBox input#sales,
.contact .formBox input#capital,
.contact .formBox input#employee {
width: 150px;
}

.contact .formBox select#branch {
width: 250px;
}

.contact .formBox dl dd p input[type="checkbox"]:checked + label:after {
background: url("/ja/assets/img/ico_checkbox.png") no-repeat center;
background-size: 100% auto;
}

.contact .formBox dl dd p span input[type="tel"].short {
width: 200px;
}

.contact .formBox span.wpcf7-not-valid-tip,
.entry .formBox span.wpcf7-not-valid-tip{
color: #fe0000;
font-size: 14px;
font-weight: bold;
padding-top: 5px;
}

.contact .formBox dl dd input.wpcf7-not-valid {
background-color: #fff2f2;
}

.contact .formBox .wpcf7-response-output,
.entry .wpcf7-response-output {
background-color: #fe0000;
color: #fff ;
font-size: 16px;
padding: 7px;
text-align: center;
font-weight: bold;
border: none;
}

span.agreement span.wpcf7-list-item-label {
	line-height: 200%;
	font-size: 16px;
} 

dd.center a {
	text-align: center;
	text-decoration: underline;
	font-size: 13px;
}

dd.center a:hover {
	color: #0022FF;
	transition: 0.3s all;
}

.confirm span.agreement input[type="checkbox"] {
  position: relative;
  width: 16px;
  height: 16px;
  border: 1px solid #000;
  vertical-align: -5px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.confirm span.agreement input[type="checkbox"]:checked:before {
  position: absolute;
  top: 1px;
  left: 4px;
  transform: rotate(50deg);
  width: 4px;
  height: 8px;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
  content: '';
}

p.back input {
	display: block;
	padding: 10px 0;
	color: #144996;
	font-size: 15px;
	font-weight: bold;
	border: 1px solid #144996;
	box-sizing: border-box;
	transition: 0.3s all;
}

.contact span.wpcf7-radio input {
	appearance: none; 
	-webkit-appearance: none; 
	-moz-appearance: none; 
	margin: 0;
	margin-right: 3px;
	width: 16px;
	height: 16px;
	vertical-align: middle;
	border-radius: 100%;
	border-width: 1px;
	border-style: solid;
	border-color: #c6c6c6;
	background-color: #fff;
	position: relative;
	top: -2px;
	padding: 10px !important;
}

.contact span.wpcf7-radio input:checked {
	border-color: #666666;
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"><circle cx="50" cy="50" r="40" stroke-width="4" fill="%23ee0066" /></svg>');
	background-size: 14px;
	background-repeat: no-repeat;
	background-position: center;
}


.contact .formBox dl dd input[type="checkbox"] {
  position: relative;
  width: 20px;
  height: 20px;
  border: 1px solid #333;
  vertical-align: -5px;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.contact .formBox dl dd input[type="checkbox"]:checked:before {
  position: absolute;
  top: 0px;
  left: 4px;
  transform: rotate(40deg);
  width: 7px;
  height: 11px;
  border-right: 2px solid #333;
  border-bottom: 2px solid #333;
  content: '';
}

	
	
@media screen and (max-width: 750px) {

.contact {
width: 86.666%;
margin: 0 auto;
padding: 10% 0 11.5%;
box-sizing: border-box;
}

.contact h2 {
margin: 0 0 9%;
padding: 0 0 2%;
color: #333;
font-size: 20px;
font-weight: bold;
background: url("/ja/assets/img/bg_h2_01.png") no-repeat center bottom;
background-size: 100px auto;
}

.contact .lead {
margin: 0 0 5%;
font-size: 12px;
line-height: 1.58;
}

.contact .txtList {
padding: 0 0 3%;
}

.contact .txtList li {
margin: 0 0 3%;
padding: 0 0 0 25px;
font-size: 12px;
line-height: 1.58;
background: url("/ja/assets/img/ico_arw_07.png") no-repeat left 3px;
background-size: 8px auto;
}

.contact .right {
margin: 0 0 5%;
font-size: 12px;
line-height: 1.58;
text-align: left !important;
}

.contact .formBox {
max-width: inherit;
margin: 0 auto;
}

.contact .formBox dl dt {
margin: 0 0 1%;
font-size: 15px;
font-weight: bold;
}

.contact .formBox dl dd {
margin: 0 0 7%;
}

.contact.confirm .formBox dl dd {
margin: 0 0 7%;
padding: 1% 0 0 1em;
color: #333;
font-size: 14px;
line-height: 1.58;
}

.contact .formBox dl .err {
margin: -5% 0 7%;
color: #fe0000;
font-size: 12px;
font-weight: bold;
}

.contact .formBox dl .mb10 {
margin: 0 0 3%;
}

.contact.confirm .formBox dl .mb10 {
margin: 0 0 3%;
}

.contact .formBox dl dd input {
-moz-appearance: none;
-webkit-appearance: none;
appearance: none;
width: 100%;
padding: 7px 10px;
font-size: 14px;
background: #fff;
border: 1px solid #333;
box-sizing: border-box;
}

.contact .formBox dl dd .yubin {
width: 162px;
}

.contact .formBox dl dd select {
-moz-appearance: none;
-webkit-appearance: none;
appearance: none;
width: 158px;
padding: 7px 10px;
font-size: 14px;
background: #fff url("/ja/assets/img/ico_arw_select_sp.png") no-repeat right center;
background-size: 36px auto;
border: 1px solid #333;
box-sizing: border-box;
}

.contact .formBox dl dd textarea {
-moz-appearance: none;
-webkit-appearance: none;
appearance: none;
width: 100%;
height: 208px;
padding: 7px 10px;
font-size: 14px;
background: #fff;
border: 1px solid #333;
box-sizing: border-box;
}
	
.contact .formBox .note {
margin: -5% 0 3%;
font-size: 10px;
line-height: 1.6;
}

.contact .formBox .type {
margin: -2% 0 5%;
font-size: 14px;
line-height: 2;
}

.contact .formBox ul {
display: block;
}

.contact .formBox ul li {
margin: 0 0 3%;
}

.contact .formBox ul li:nth-child(odd) {
width: 100%;
}

.contact .formBox ul li:nth-child(even) {
width: 100%;
}

.contact .formBox ul li input {
width: 15px;
height: 15px;
margin: 0 8px 0 0;
vertical-align: middle;
}

.contact .formBox ul li label {
font-size: 14px;
line-height: 1.08;
vertical-align: middle;
}

.contact .formBox .link {
margin: 0 0 5%;
}

.contact .formBox .link a {
text-decoration: underline;
}

.contact .formBox .btnBox {
display: flex;
justify-content: space-between;
	/*
align-items: center;
	*/
padding: 5% 0 5%;
}

.contact .formBox .btnBox p {
width: 47.7%;
margin: 0;
text-align: center;
}

.contact .formBox .btnBox .submit input {
-moz-appearance: none;
-webkit-appearance: none;
appearance: none;
width: 100%;
padding: 11px 0;
color: #fff;
font-size: 15px;
font-weight: bold;
background: #144996;
border: none;
box-sizing: border-box;
transition: 0.3s all;
}

.contact .formBox .btnBox .cancel a {
display: block;
padding: 10px 0;
color: #144996;
font-size: 15px;
font-weight: bold;
border: 1px solid #144996;
box-sizing: border-box;
transition: 0.3s all;
}

.contact .formBox .btnBox p a:hover ,
.contact .formBox .btnBox p input:hover {
opacity: 1;
cursor: pointer;
}

.contact .compBox {
width: 86.666%;
margin: 0 auto;
padding: 8% 0 7%;
text-align: center;
border-top: 1px solid #ccc;
border-bottom: 1px solid #ccc;
}

.contact.complete h3 {
margin: 0 0 5%;
padding: 0;
color: #333;
font-size: 15px;
font-weight: bold;
border-bottom: none;
}

.contact .compBox .btn {
width: 155px;
margin: 0 auto;
}

.contact .compBox .btn a {
display: block;
color: #144996;
font-size: 15px;
font-weight: bold;
line-height: 2.9;
border: 1px solid #144a97;
}

/*  for contact form 7 --------------- */

.contact .formBox span.wpcf7-radio	{
display: inline;
}

.contact .formBox span.wpcf7-radio span.wpcf7-list-item	{
display: inline-flex;
vertical-align: top;
line-height: 1;
}

.contact .formBox span.wpcf7-radio span.wpcf7-list-item label {
margin: 0 0 ;
}
	
.contact .formBox span.wpcf7-checkbox {
display: inline;
}
	
.contact .formBox span.wpcf7-checkbox span.wpcf7-list-item {
display: inline-block;
vertical-align: top;
line-height: 1;
}
	
.contact .formBox span.wpcf7-checkbox span.wpcf7-list-item label {
display: inline;
}
	
.contact .formBox span.wpcf7-checkbox span.wpcf7-list-item input {
display: inline;
	}

.contact .formBox span.wpcf7-radio span.wpcf7-list-item span.wpcf7-list-item-label {
margin: auto 0;
padding: 0;
font-size: 14px;
}

.contact .formBox span.wpcf7-radio span.wpcf7-list-item:nth-child(odd) {
width: 100%;
}

.contact .formBox span.wpcf7-radio span.wpcf7-list-item:nth-child(even) {
width: 100%;
}
	
.contact .formBox span.wpcf7-not-valid-tip {
color: #fe0000;
font-size: 12px;
font-weight: bold;
}

}
