@charset "UTF-8";

main h2{
	margin-top: 30px;
}

input, button, textarea, select {
  font-size: 14px;
  padding: 8px;
  border: 1px solid #808080;
  line-height: 1.4;
}
select {
	height: 37px;
}
button {
	line-height: 1;
}

main input[type=tel],
main input[type=text],
main input[type=email],
main textarea{
	width:70%;
}

main input[type=radio],
main input[type=checkbox] {
	visibility: hidden;
	margin: 0;
}
main input[type=radio] + label,
main input[type=checkbox] + label {
	position: relative;
	display: block;
	font-size: 14px;
	font-weight: bold;
	cursor: pointer;
	padding: 10px 0 10px 34px;
}

main input[type=radio] + label::before,
main input[type=checkbox] + label::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 8px;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
	width: 18px;
	height: 18px;
	margin-top: -9px;
	background: #FFF;
	border: 2px solid #808080;
}
main input[type=radio] + label::before {
	border-radius: 30px;
}
main input[type=radio]:checked + label::after,
main input[type=checkbox]:checked + label::after {
	content: "";
	position: absolute;
	top: 50%;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
}
main input[type=radio]:checked + label::after {
	left: 13px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	background: #038de1;
	border-radius: 8px;
}
main input[type=checkbox]:checked + label::after {
	left: 9px;
	width: 16px;
	height: 8px;
	margin-top: -8px;
	border-left: 3px solid #038de1;
	border-bottom: 3px solid #038de1;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

span.hissu {
	margin-top: 2px;
	color: #944961;
	background-color: #efc6d2;
	display: inline-block;
	padding: 4px 6px 3px;
	font-size: 10px;
	line-height: 1;
	letter-spacing: 0;
	text-align: center;
	font-weight: bold;
	margin: 0 8px;	
	vertical-align: middle;
}

.red{
	color: #FD1717;
	font-weight: bold;
}

img#captcha{
	margin-right: 8px;
	margin-bottom: 16px;
}
.btn .reload {
	display: inline-block;
	position: relative;
	margin: 0 8px -2px 0;
	width: 12px;
	height: 12px;
	border-top: 2px solid #0e0e0e;
	border-left: 2px solid #0e0e0e;
	border-right: 2px solid transparent;
	border-bottom: 2px solid #0e0e0e;
	border-radius: 100% 100% 100% 100%;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.btn .reload::before {
	content: "";
	position: absolute;
	top: -2px;
	left: 7px;
	width: 0;
	height: 0;
	border-top: 4px solid transparent;
	border-left: 4px solid #0e0e0e;
	border-bottom: 4px solid transparent;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.btn:hover .reload {
	border-top: 2px solid #fff;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
}
.btn:hover .reload::before {
	border-left: 4px solid #fff;
}

p.note{
	margin-top: 4px;
}

main .form .result{
	padding: 30px 30px;
	background-color: #f6fafc;
	line-height: 1.8;
	text-align: left;
	max-width: 780px;
	margin: 30px auto;
}

main .form section{
	display: inline-block;
	max-width: 780px;
	margin: 0 auto 20px;
	padding: 20px 20px 30px;
	background-color: #f0f5f9;
}
main .form h2{
	font-size: 24px;
	margin-bottom: 30px;
	margin-top: 20px;
}

main .form ol{
	background-color: #f6fafc;
	position: relative;
	overflow: hidden;
}
main .form ol li,
main .form ol li h4{
	text-align:left;
	font-size: 14px;
}
main .form ol li h4{
	margin-bottom: 16px;
}
main .form ol li{
	margin: 0 3em;
	padding: 20px 12px;
	font-weight: bold;
	position: relative;
}
main .form ol li::before{
	position: absolute;
	top: -4px;
	right: 0;
	content: " ";
	display: inline-block;
	width: 200%;
	height: 4px;
	background-color: #f0f5f9;
	vertical-align: middle;
}
main .form ol li input[type=radio] + label,
main .form ol li input[type=checkbox] + label,
main .form ol li p{
	font-weight: normal;
}
main .form ol li>div{
	font-weight: normal;
}

main .form table{
	margin: 0 auto;
	border: none;
	min-width: 640px;
}
main .form th, main .form td {
  color: #0e0e0e;
  font-size: 14px;
  background-color: #f6fafc;
  border-right: none !important;
	border-left: none !important;
	border-bottom: none !important;
  border-top: 4px solid #f0f5f9 !important;
  padding: 20px 10px;
  vertical-align: top;
}
main .form th {
  text-align: right;
  font-size: 13px;
  width: 12em;
}
main .form tr.submit th, main .form tr.submit td{
	background-color: #f0f5f9;
	text-align: center;
}

main .form .btn.arrow-l::after {
  left: 26px;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}
/*-----------------------------------------------------------------------
 * responsive
 *----------------------------------------------------------------------- */

@media screen and (max-width: 767px) { /*smartphone*/

  input, textarea{ font-size:16px !important; height:auto; padding: 6px;}
	main input[type=tel],
	main input[type=text],
	main input[type=email],
	main textarea{
		width:100%;
		max-width: 500px;
	}

	main h2{
		margin-top: 20px;
	}

	main .form h2 {
    font-size: 21px;
		margin-bottom: 18px;
		margin-top: 12px;
	}

	span.hissu {
		margin: 0 8px;
	}

	main .form section {
		margin: 0 8px 20px;
		padding: 12px 8px 24px;
		background-color: #f0f5f9;
		min-width: 94%;
	}
	main .form section select{
		width: 100%;
	}
	main .form table {
    min-width: 0;
		width: 100%;
	}
	main .form th, main .form td {
    border: none;
    display: block;
    padding: 8px;
	}
	main .form th {
    text-align: left;
    padding-bottom: 0;
    width: auto;
	}
	main .form td {
		padding-top: 0;
		border-top: none !important;
	}
	main .form th br {
		display: none;
	}
	main .form tr.submit th,
	main .form tr.submit td {
		padding: 20px 8px;
	}
}
@media screen and (max-width: 479px) {
	img#captcha,
	button#refreshPic {
		display: block;
		margin: 0 auto 8px;
	}
}



/* 20191009 inquiries fix */
#inquiries main {
  padding: 0 0 100px;
}
main .form tr.submit td {
  padding: 20px 0;
}
#inquiries .btn.arrow-r {
  line-height: 1.6;
  margin: 0 auto;
  max-width: 330px;
  width: 100%;
}
#inquiries .intro section {
  margin: 0 auto 60px;
  padding: 0 20px;
}
#inquiries .intro p {
  line-height: 1.8;
  margin: 0 auto;
}
#inquiries .form_list,
#inquiries .form_list> li,
#inquiries .form_list section {
  width: 100%;
}
#inquiries .form_list,
#inquiries .form_list-add_caution  {
  max-width: 780px;
}
#inquiries .form_list {
  display: inline-block;
  margin: 0 auto 14px;
}
#inquiries .form_list> li:not(:last-of-type) {
  margin: 0 auto 6px;
}
#inquiries .form_list section {
  margin: 0;
  padding: 0;
}
#inquiries .form_list-head {
  background: #2c78ca;
  color: #fff;
  cursor: pointer;
  margin: 0 auto;
  padding: 20px 1em 19px;
  position: relative;
  text-align: left;
}
#inquiries .form_list-head::before,
#inquiries .form_list-head::after {
  background-color: #fff;
  content: '';
  height: 5px;
  margin-top: -2px;
  position: absolute;
  right: 4%;
  top: 50%;
  width: 28px;
}
#inquiries .form_list-head::after {
  transform: rotate(90deg);
  transition: 0.2s ease;
}
#inquiries .form_list-head.open::after {
  transform: rotate(180deg);
}
#inquiries .accordionText {
  display: none;
}
#inquiries .form_list .accordionText {
	margin: 0 auto;
	background-color: #f0f5f9;
}
#inquiries .form_list-proper .accordionText {
	padding: 20px 20px 30px;
}
#inquiries .form_list-change .accordionText_inner {
	padding: 40px 20px 40px;
}
#inquiries .form_list-change .accordionText_line{
	height: 1px;
    width: 95%;
    margin: 0 auto;
    background-color: #0e0e0e;
}
#inquiries .form_list-change p,
#inquiries .form_list-other .accordionText> p,
#inquiries .form_list-other a {
  font-size: 14px;
}
#inquiries .form_list-other p.attention {
    padding: 12px;
    line-height: 1.4;
    letter-spacing: -0.02em;
    border: 2px solid #ccc;
    border-radius: 8px;
}
#inquiries .form_list-change p {
  margin: 0 auto 18px;
  line-height: 2.0;
}
#inquiries .form_list-other .accordionText {
  padding: 24px 20px 30px;
}
#inquiries .form_list-other .accordionText_inner {
  background: #f6fafc;
  padding: 20px 10px;
}
#inquiries .form_list-other a.sptel {
  color: #0e0e0e;
  display: block;
  text-decoration: none;
}
#inquiries .form_list-other a:not(:last-of-type) {
  margin: 0 auto 0.8em;
}
#inquiries .form_list-other a:hover dl {
  -webkit-opacity: 0.6;
  -moz-opacity: 0.6;
  opacity: 0.6;
  -webkit-transition: -webkit-opacity 0.4s linear;
  -moz-transition: -moz-opacity 0.4s linear;
  transition: opacity 0.4s
}
#inquiries .form_list-other .accordionText> p {
  margin: 0 auto 20px;
}
#inquiries .telephone {
  max-width: 24em;
  margin: 0 auto;
  overflow: hidden;
  text-align: left;
}
#inquiries .telephone:not(:last-of-type) {
  margin: 0 auto 0.8em;
}
#inquiries .telephone> dt {
  font-weight: bold;
}
#inquiries .telephone dd dt {
  float:left;
}
#inquiries .telephone dd dd {
  width: 100%;
}
#inquiries .telephone dd dd a {
  color: #0e0e0e;
  display: block;
  margin: 0 auto;
  padding: 0 0 0 5.7em;
  text-decoration: none;
}
#inquiries .form_list-add_caution {
  margin: 0 auto;
  padding: 0 0.6em;
  text-align: left;
}
@media screen and (max-width: 979px) {
  main article.intro,
  #inquiries .form {
    padding: 0 8px;
  }
  main article.intro p {
    padding: 0 0.6em;
  }
  #inquiries .intro section {
    padding: 0;
  }
}
@media screen and (max-width: 767px) {
  #inquiries main {
    padding: 0 0 60px;
  }
  #inquiries .intro section {
    margin: 0 auto 30px;
  }
  #inquiries .btn.arrow-r {
    padding-top: 15px;
    padding-bottom: 14px;
  }
  #inquiries .btn.arrow-r::before,
  #inquiries .btn.arrow-r::after {
    right: 16px;
  }
  #inquiries .btn.arrow-r::before {
    width: 12px;
  }
  #inquiries .btn.arrow-r::after {
    height: 8px;
    width: 8px;
  }
  #inquiries .intro p {
    line-height: 1.6;
  }
  #inquiries .intro p br {
    display: none;
  }
  #inquiries .form_list {
    margin: 0 auto 10px;
  }
  #inquiries .form_list-head {
    font-size: 16px;
  }
  #inquiries .form_list-head {
    padding: 18px 1em 17px;
  }
  #inquiries .form_list-head::before,
  #inquiries .form_list-head::after {
    height: 4px;
    width: 22px;
  }
  #inquiries .form_list-proper .accordionText {
    padding: 10px 10px 20px;
  }
  #inquiries .form_list-change .accordionText_inner,
   #inquiries .form_list-other .accordionText {
    padding: 24px 10px 24px;
  }
  #inquiries .form_list-change p,
  #inquiries .form_list-other .accordionText> p,
  #inquiries .form_list-other a {
    font-size: 14px;
  }
  #inquiries .form_list-add_caution {
    margin: 0 auto;
  }
}
@media screen and (max-width: 583px) {
  #inquiries .form_list-change p,
  #inquiries .form_list-other .accordionText> p,
  #inquiries .form_list-other a {
    font-size: 13px;
  }
}
@media screen and (max-width: 479px) {
  #inquiries .form_list-head {
    font-size: 14px;
  }
  #inquiries .form_list-head::before,
  #inquiries .form_list-head::after {
    height: 3px;
    width: 18px;
  }
}