@charset "UTF-8";

img {
  width: auto;
  height: auto
}

a {
  outline: none
}

html#form, #form body {
  height: 100%;
  min-height: 720px
}

body {
  color: #000;
  font-size: 16px;
  line-height: 1;
  min-width: 1000px;
  max-width: 100%;
  overflow-x: hidden;
  margin: 0 auto
}

.inner {
  width: 1000px;
  margin: 0 auto
}

strong {
  font-weight: bold
}

.hover {
  -webkit-transition: .5s;
  transition: .5s;
  opacity: 1
}

.hover:hover {
  opacity: .7
}

.pageInner {
  margin: auto;
  width: 1000px
}

.center {
  text-align: center
}

.flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between
}

#header {
  padding: 8px 0;
  position: fixed;
  background: #fff;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 3
}

#fv .fv-appeal {
  background: url(../img/fv_appeal_background.png);
  height: 46px;
  text-align: center;
  position: relative
}

#fv .fv-appeal img {
  padding-top: 7.5px
}

#fv .top-fv {
  background: url(../img/fv_background_cover.png) center top;
  background-size: 100%;
  margin-top: -6px;
  padding-bottom: 45px
}

#fv .top-fv .inner {
  position: relative
}

#fv .top-fv .inner .left-top {
  padding-top: 44px;
  position: relative;
  z-index: 2
}

#fv .top-fv .inner .left-top img:nth-child(2) {
  margin-top: 21px;
  margin-left: -3px
}

#fv .top-fv .inner .right-top {
  position: absolute;
  right: -130px;
  top: 12px
}

#fv .fv-point {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative
}

#fv .fv-point span {
  width: 50%;
  height: 40px;
  display: block
}

#fv .fv-point span.left {
  background: #003f97;
  padding-right: 27px;
  padding-top: 8px;
  text-align: right
}

#fv .fv-point span.right {
  background: #0d62b2;
  padding-left: 20px;
  padding-top: 5px
}

.campaign {
  background: url(../img/campaign_background.png);
  padding: 22.5px 0;
  text-align: center
}

.info {
  padding-top: 37px;
  position: relative;
  overflow: hidden;
  padding-bottom: 43px
}

.info:after {
  position: absolute;
  background: url(../img/info_background_left.png);
  width: 276px;
  height: 300px;
  left: 11px;
  top: 47px;
  content: "";
  z-index: -1
}

.info .main-info {
  border: 11px solid #ff4400;
  padding-bottom: 21px
}

.info .main-info .text-info {
  width: 730px;
  text-align: center;
  float: right;
  padding-top: 20px;
  margin-right: 16px
}

.info .main-info .info-point {
  margin-bottom: 6px
}

.info .main-info .info-point img {
  margin: 0 5px
}

.info .main-info .bottom-info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center
}

.info .main-info .bottom-info span {
  margin: 0 4px
}

.info .main-info .tel-info {
  margin: 13px 0 19px
}

#trouble {
  background: #dde8f5;
  padding-bottom: 97px
}

#trouble h2 {
  background: url(../img/title_background.png);
  padding-top: 57px;
  padding-bottom: 47px;
  margin-bottom: 29px
}

#trouble h2 img {
  margin-left: 6px
}

#trouble .text-trouble {
  font-size: 15px;
  margin-bottom: 53px
}

#trouble .trouble-cause .main-cause {
  padding: 50px 38px 57px;
  border: 6px solid #a3afbd;
  background: #fff;
  border-top: 0
}

#trouble .trouble-cause .main-cause .check-trouble .ar-check {
  width: 430px;
  float: left
}

#trouble .trouble-cause .main-cause .check-trouble .ar-check:nth-child(2) {
  width: 446px;
  float: right
}

#trouble .trouble-cause .main-cause .check-trouble .ar-check:nth-child(2) .title-check {
  -webkit-box-align: initial;
  -webkit-align-items: initial;
  -ms-flex-align: initial;
  align-items: initial
}

#trouble .trouble-cause .main-cause .check-trouble .ar-check:nth-child(2) .title-check span.text {
  line-height: 31px;
  padding-top: 11px
}

#trouble .trouble-cause .main-cause .check-trouble .ar-check .title-check {
  font-size: 30px;
  color: #d40505;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 12px
}

#trouble .trouble-cause .main-cause .check-trouble .ar-check .title-check span {
  font-weight: bold
}

#trouble .trouble-cause .main-cause .check-trouble .ar-check .title-check span:first-child {
  margin-right: 12px
}

#trouble .trouble-cause .main-cause .check-trouble .ar-check .text-check {
  border-left: 3px solid #b72c2c;
  font-size: 16px;
  margin-left: 25px;
  padding-left: 16px;
  line-height: 21px;
  padding-bottom: 7px
}

#trouble .trouble-cause .main-cause .check-trouble .ar-check .text-check span {
  display: block;
  color: #d40505;
  text-decoration: underline;
  margin-top: 10px;
  line-height: 20px
}

#trouble .trouble-cause .main-cause .des-check {
  text-align: center;
  font-weight: bold;
  font-size: 18px;
  margin-top: 47px
}

#trouble .trouble-cause .main-cause .voice-trouble {
  background: url(../img/trouble_voice_background.png);
  width: 98.7%;
  margin: 0 auto;
  margin-top: 46px;
  padding-top: 25px;
  padding-bottom: 57px
}

#trouble .trouble-cause .main-cause .voice-trouble h3 {
  margin-bottom: 35px
}

#trouble .trouble-cause .main-cause .voice-trouble h3 img {
  margin-left: 4px
}

#trouble .trouble-cause .main-cause .voice-trouble .main-voice {
  width: 91%;
  margin: 0 auto
}

#trouble .trouble-cause .main-cause .voice-trouble .main-voice .ar-voice {
  background: #fff;
  padding: 25px;
  margin-bottom: 10px
}

#trouble .trouble-cause .main-cause .voice-trouble .main-voice .ar-voice:nth-child(3) {
  padding-top: 20px;
  padding-bottom: 20px
}

#trouble .trouble-cause .main-cause .voice-trouble .main-voice .ar-voice:nth-child(4) {
  padding-top: 20px;
  padding-bottom: 20px
}

#trouble .trouble-cause .main-cause .voice-trouble .main-voice .ar-voice:nth-child(5) {
  padding-bottom: 15px;
  margin-bottom: 0
}

#trouble .trouble-cause .main-cause .voice-trouble .main-voice .ar-voice .title-voice {
  width: 330px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 20px
}

#trouble .trouble-cause .main-cause .voice-trouble .main-voice .ar-voice .title-voice span {
  font-weight: bold;
  line-height: 25px
}

#trouble .trouble-cause .main-cause .voice-trouble .main-voice .ar-voice .title-voice span.icon {
  margin-right: 21px
}

#trouble .trouble-cause .main-cause .voice-trouble .main-voice .ar-voice .a-voice {
  width: 415px;
  font-size: 15px;
  line-height: 20px
}

#trouble .trouble-cause .trouble-solution {
  margin-top: 51px
}

#comparison {
  padding-top: 69px;
  margin-bottom: 37px
}

#comparison h2 {
  margin-bottom: 54px
}

#comparison .main-comparison {
  border: 6px solid #94a2b2;
  padding: 45px 29px 48px
}

#comparison .main-comparison .ar-comparison {
  text-align: center
}

#comparison .main-comparison .ar-comparison img.comparison_img03 {
  margin-bottom: 5px
}

#comparison .text-comparison {
  font-size: 15px;
  text-align: center;
  margin: 26px 0 28px;
  line-height: 20px
}

#comparison .bottom-comparison {
  text-align: center
}

#comparison .bottom-comparison .title-bottom {
  margin-bottom: 35px
}

#comparison .bottom-comparison .video {
  margin-left: -15px
}

#comparison .bottom-comparison .video .text-video {
  font-size: 17px;
  margin-top: 5px
}

#comparison .bottom-comparison span {
  font-size: 15px;
  display: block
}

#comparison .bottom-comparison span.border {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 7px
}

#service {
  background: #c8e0fb;
  padding-bottom: 25px
}

#service h2 {
  background: url(../img/title_background.png);
  padding-top: 50px;
  padding-bottom: 46px;
  margin-bottom: 40px
}

#service h2 img {
  margin-left: 6px
}

#service .img-service {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between
}

#merit {
  padding-top: 71px;
  margin-bottom: 82px
}

#merit h2 {
  margin-bottom: 57px
}

#merit .inner .img-merit .img {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 30px
}

#merit .inner .img-merit .img:last-child {
  margin-bottom: 0
}

#merit .inner .img-merit .img img {
  margin: 0 13.5px
}

#flow {
  background: url(../img/flow_background.png);
  padding-top: 70px;
  padding-bottom: 35px
}

#flow h2 {
  margin-bottom: 63px
}

#flow h2 img {
  margin-left: 15px
}

#flow .flow-img {
  text-align: center
}

#flow .flow-img .img-flow01 {
  margin-bottom: 2px
}

#flow .flow-credit {
  margin-top: 53px
}

#area {
  padding-top: 89px;
  padding-left: 216px;
  padding-bottom: 259px
}

#area .inner {
  position: relative
}

#area .inner:after {
  position: absolute;
  content: "";
  background: url(../img/area_mainImg.png);
  width: 601px;
  height: 484px;
  top: -21px;
  right: 229px
}

#area .info-area {
  width: 520px
}

#area .info-area .text-area {
  font-size: 15px;
  margin-top: 13px;
  line-height: 23px;
  padding-left: 12px
}

#footer {
  background: #0d62b2;
  color: #fff;
  padding-top: 24px;
  font-size: 14px;
  padding-bottom: 20px
}

#footer p {
  margin-bottom: 18px;
  line-height: 19px
}

#footer p.copyright {
  font-size: 12px;
  margin-bottom: 0
}

#form .info .main-info {
  padding-bottom: 11px
}

#form .info .main-info .text-info {
  padding-top: 27px
}

#form .info .main-info .info-point {
  margin-bottom: 14px
}
.formInputFrame, #form .formTable td select, #form .formTable td input[type="text"], #form .formTable td textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: #fff;
  border: 1px solid #5a5a5a;
  border-radius: 0;
  padding-left: 15px;
  resize: none;
  border-radius: 10px
}

#form .info:after {
  position: absolute;
  background: url(../img/info_form_background_left.png);
  width: 210px;
  height: 250px;
  left: 42px;
  top: 52px;
  content: "";
  z-index: -1
}

#form #header {
  position: static
}

#form #formFrame {
  margin-bottom: 68px
}

#form #formFrame h2.title {
  background: #096fe4;
  color: #fff;
  font-size: 23px;
  padding: 53.5px 0;
  margin-bottom: 16px;
  font-weight: bold
}

#form #mainFrame {
  margin: auto;
  width: 860px
}

#form #mainFrame .slogan-form {
  font-size: 15px;
  text-align: center;
  margin-top: 15px;
  margin-bottom: 26px
}

#form .text-bottom {
  font-size: 15px;
  text-align: center;
  margin-bottom: 27px
}

#form_contents {
  line-height: 1.8;
  padding: 0 0 80px;
  width: 800px;
  margin: 0 auto;
}

#form_contents .title {
  background-color: #c7edff;
  text-align: left;
  padding: 14px 0 12px 25px;
  margin-top:16px;
  font-size: 16px;
  font-weight: bold;
}

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

#form_contents .error-message {
  color: red;
  font-weight: bold;
}

#form_contents table {
  background-color: #ffffff;
  border-collapse: collapse;
  font-size: 14px;
  width: 100%;
  color:#333333;
  margin: 0;
  padding: 0;
  border-bottom: #7ecef4 2px solid;
}

#form_contents th {
  background-color: #e6f7ff;
  text-align: left;
  padding: 16px 0 14px 22px;
  vertical-align: top;
  border-bottom: #7ecef4 1px solid;
  border-left: #7ecef4 2px solid;
  font-size: 16px;
  font-weight: bold;
  width: 200px;
}

#form_contents td {
  background-color: #fff;
  text-align: left;
  padding: 8px 0 8px 10px;
  vertical-align: middle;
  border-right: #7ecef4 2px solid;
  border-bottom: #7ecef4 1px solid;
  font-size: 16px;
}

#form_contents .border {
  border: #7ecef4 2px solid;
  border-top: none;
  line-height: 1.6;
}

#form_contents label {
  display: block;
  float: left;
  margin: 0 10px 0 0;
}

#form_contents textarea {
  border: #a8acad solid 1px;
  height: 190px;
  width: 510px;
}

#form_contents .kiyaku {
  height: 150px;
  overflow-y: scroll;
  line-height: 1.6;
}

#form_contents .center {
  text-align: center;
}

#form_contents input[type="text"] {
  width: 226px;
  border: #a8acad solid 1px;
  padding: 1px 2px;
  margin-bottom: 8px;
}
#form_contents input[name="data[ReportForm][tel]"] {
  width: 300px;
}
#form_contents input[name="data[ReportForm][mail]"] {
  width: 300px;
  margin-bottom: 0;
}
#form_contents select{
  width: 150px;
  margin: 4px 0 5px;
  border: #a8acad solid 1px;
}

#form_contents input[type="text"].long {
  width: 410px;
  margin-bottom: 0;
}

#form_contents input[value="確認画面へ"]{
  text-indent: 200%;
  white-space: nowrap;
  overflow: hidden;
  width: 48.5%;
  height: 72px;
  background: url(../img/form_next_button.png) no-repeat;
  border: none;
  cursor: pointer;
}
#form_contents input[value="確認画面へ"]:hover{
  opacity: 0.7;
  filter: alpha(opacity=70);
}

#form_contents input[value="戻る"]{
  text-indent: 200%;
  white-space: nowrap;
  overflow: hidden;
  width: 48.5%;
  height: 72px;
  background: url(../img/form_prev_button.png) no-repeat;
  border: none;
  cursor: pointer;
}
#form_contents input[value="戻る"]:hover{
  opacity: 0.7;
  filter: alpha(opacity=70);
}

#form_contents input[value="送信"]{
  text-indent: 200%;
  white-space: nowrap;
  overflow: hidden;
  width: 48.5%;
  height: 72px;
  background: url(../img/form_send_button.png) no-repeat;
  border: none;
  cursor: pointer;
}
#form_contents input[value="送信"]:hover{
  opacity: 0.7;
  filter: alpha(opacity=70);
}
