@charset "UTF-8";

/************fix************/
* {
  border: 0;
  box-sizing: border-box;
  font-size: 100%;
  margin: 0;
  padding: 0;
}

.flex {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .flex {
    display: block;
  }
}

a:hover {
  opacity: 0.7;
  text-decoration: none;
}

ol,
ul {
  list-style: none;
}

img {
  display: inline-block;
  max-width: 100%;
  vertical-align: middle;
}

.tal_center {
  text-align: center;
}

.tal_right {
  text-align: right;
}

.t_red {
  color: #ff8237;
}

.t_blue {
  color: #00509e;
}

.sixpad {
  color: #333;
  font-size: 16px;
  text-align: left;
}

sup {
  font-size: 60%;
}

a:link {
  color: #404040;
  text-decoration: none;
}

.pcOnly {
  display: block;
}

.spOnly {
  display: none;
}


@media screen and (max-width: 767px) {
  .pcOnly {
    display: none;
  }

  .spOnly {
    display: block;
  }
  .pagetop a {
    display: block;
    text-align: center;
    color: #ffffff;
    padding: 4% 0;
    font-size: 17px;
    font-weight: bold;
}
}

h2.head {
  background: url(/campaign/hokou/img/bg_line.png) no-repeat;
  background-position: center bottom;
  font-size: 38px;
  font-weight: 600;
  padding-bottom: 10px;
  text-align: center;
}
.backTopBtn a{
  color: #1565C0;
}


@media screen and (max-width: 767px) {
  h2.head {
    background: url(/campaign/hokou/img/bg_line_sp.png) no-repeat;
    background-position: center bottom;
    font-size: 8.267vw;
    padding-bottom: .258em;
  }
}

h2.head.white {
  color: #ffffff;
}

h2.black {
  color: #333333;
}

h2.head_baton {
  color: #eb6e8f;
  font-size: 43px;
  font-weight: 600;
  text-align: center;
}

@media screen and (max-width: 767px) {
  h2.head_baton {
    font-size: 6.933vw;
  }
}

.section_inner {
  margin: 0 auto;
  max-width: 960px;
  width: 99%;
}

@media screen and (max-width: 767px) {
  .section_inner {
    width: calc(670 / 750 * 100%);
  }
}

.logo_mv {
  margin: 30px 0;
}

@media screen and (max-width: 767px) {
  .logo_mv {
    margin: 15px 0 11px;
  }

  .logo_mv .img_block {
    margin: 0 auto;
    width: 220px;
  }
}

.mv_block .section_inner {
  margin: 0 auto;
  max-width: 960px;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .mv_block {
    background-image: url(/campaign/hokou/img/bg_mv.jpg);
    background-repeat: repeat-x;
  }
}

.infor {
  padding: 71px 0 104px;
}

@media screen and (max-width: 767px) {
  .infor {
    padding: 10.933% 0 13.467%;
  }
}


@media screen and (min-width: 768px) {
  .mv_block {
    background-image: url(/campaign/hokou/img/bg_mv.jpg);
    background-repeat: repeat-x;
  }
}

.infor .block {
  margin: 0 auto;
  width: calc(720 / 960 * 100%);
}

@media screen and (max-width: 767px) {
  .infor .block {
    margin: 0 auto;
    width: 100%;
  }
}

.infor ul {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .infor ul {
    display: block;
  }
}

.infor ul li {
  width: calc(360 / 720 * 100%);
}

@media screen and (max-width: 767px) {
  .infor ul li {
    margin: 0 auto;
    width: 100%;
  }

  .infor ul li:nth-child(n+2) {
    margin-top: 12.388%;
  }
}

.infor ul li .title {
  font-size: 32px;
  font-weight: 600;
  letter-spacing: -.02em;
  line-height: 1.563;
  margin: 0 -.625em;
  text-align: center;
}

@media screen and (max-width: 960px) {
  .infor ul li .title {
    font-size: 3.333vw;
  }
}

@media screen and (max-width: 767px) {
  .infor ul li .title {
    font-size: 5.6vw;
    margin: 0;
  }
}

.infor ul li .title.blue {
  color: #0064a9;
}

.infor ul li .title.cyan {
  color: #3bb4ae;
}

.infor ul li .photo {
  margin: 9px auto 0;
  width: calc(226 / 360 * 100%);
}

@media screen and (max-width: 767px) {
  .infor ul li .photo {
    margin: 2.09% auto 0;
    text-align: center;
    width: calc(226 / 670 * 100%);
  }
}

.infor ul li .desc {
  color: #333333;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.5;
  margin-top: .667em;
  text-align: center;
}

@media screen and (max-width: 960px) {
  .infor ul li .desc {
    font-size: 2.5vw;
  }
}

@media screen and (max-width: 767px) {
  .infor ul li .desc {
    font-size: 4vw;
    line-height: 1.3em;
    margin-top: .633em;
  }
}

.infor ul li .desc span {
  font-size: 26px;
	line-height: 1.4;
}

@media screen and (max-width: 960px) {
  .infor ul li .desc span {
    font-size: 2.708vw;
  }
}

@media screen and (max-width: 767px) {
  .infor ul li .desc span {
    font-size: 4.533vw;
  }
}

.infor ul li .desc span.orange {
  color: #ff8237;
}

.btn_CV {
  margin-top: 69px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .btn_CV {
    margin-top: 14.179%;
  }
}

.feature {
  background: url(/campaign/hokou/img/bg.jpg) repeat;
  padding: 94px 0 100px;
}

@media screen and (max-width: 767px) {
  .feature {
    padding: 12% 0 23.733%;
  }
}

.feature .wrap_block {
  margin-top: 90px;
}

@media screen and (max-width: 767px) {
  .feature .wrap_block {
    margin-top: 14.925%;
  }
}

.feature .block {
  background: #ffffff;
  padding: 40px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .feature .block {
    padding: 11.791% 5.972% 15.522%;
  }

  .feature .block:nth-child(2) {
    padding: 11.791% 5.972% 8.507%;
  }
}

.feature .block:nth-child(n+2) {
  margin-top: 40px;
}

@media screen and (max-width: 767px) {
  .feature .block:nth-child(n+2) {
    margin-top: 14.776%;
  }
}


.feature .block .desc {
  color: #333333;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.364;
  margin-top: 1.773em;
}


@media screen and (max-width: 960px) {
  .feature .block .desc {
    font-size: 2.292vw;
  }
}

@media screen and (max-width: 767px) {
  .feature .block .desc {
    font-size: 4.533vw;
  }
}

.feature .block .list {
  margin-top: 18px;
}

@media screen and (max-width: 767px) {
  .feature .block .list {
    margin-top: 3.39%;
  }
}

.feature .block:nth-child(1) .list {
  padding-bottom: 48px;
}

@media screen and (max-width: 767px) {
  .feature .block:nth-child(1) .list {
    padding-bottom: 11.864%;
  }

  .feature .block:nth-child(2) .list {
    padding-bottom: 10.678%;
  }
}

.feature .block ul li {
  color: #333333;
  font-size: 16px;
  padding-left: .938em;
  position: relative;
}

@media screen and (max-width: 960px) {
  .feature .block ul li {
    font-size: 1.667vw;
  }
}

@media screen and (max-width: 767px) {
  .feature .block ul li {
    font-size: 4vw;
    line-height: 1.467;
  }
}


.feature .block ul li::before {
  background: #54c3f1;
  border-radius: 50%;
  content: "";
  height: .375em;
  position: absolute;
  left: 0;
  top: .563em;
  width: .375em;
}

.feature .block ul li:nth-child(n+2) {
  margin-top: 12px;
}

@media screen and (max-width: 767px) {
  .feature .block ul li:nth-child(n+2) {
    margin-top: 4.237%;
  }
}


@media screen and (min-width: 768px) {
  .feature .block .photo {
    position: absolute;
  }

  .feature .block:nth-child(1) .photo {
    right: 40px;
    top: 69px;
    width: calc(432 / 960 * 100%);
  }

  .feature .block:nth-child(2) .photo {
    right: 73px;
    top: 35px;
    width: calc(178 / 960 * 100%);
  }
}

.feature .block .banner {
  margin-bottom: 42px;
  margin-top: 54px;
}

@media screen and (max-width: 767px) {
  .feature .block .banner {
    margin-top: 6.61%;
  }
}

.feature .description {
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.5;
  margin-top: 49px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .feature .description {
    font-size: 4vw;
		margin-top: 3.167em;
  }
}


.feature .btn_CV02 {
  margin-top: 11px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .feature .btn_CV02 {
    margin-top: 10.299%;
  }
}

/* original */
.original {
  border-top: 1px solid #d9e4ed;
  padding: 142px 0 99px;
}

@media screen and (max-width: 767px) {
  .original {
    padding: 12% 0 13.467%;
  }
}

.original .content_inner {
  display: flex;
  justify-content: space-between;
  margin-top: 82px;
}

@media screen and (max-width: 767px) {
  .original .content_inner {
    display: block;
    margin-top: 10.746%;
  }

  .original h2 {
    font-size: 7.333vw;
    line-height: 1.3;
    padding-bottom: 10%;
  }
}

.original .content_inner .img_b {
  width: calc(450 / 960 * 100%);
}

@media screen and (max-width: 767px) {
  .original .content_inner .img_b {
    margin: 0 auto;
    width: calc(510 / 670 * 100%);
  }
}

.original .content_inner .text_b {
  width: calc(440 / 960 * 100%);
}

@media screen and (max-width: 767px) {
  .original .content_inner .text_b {
    width: 100%;
  }
}


.price_b {
  background-color: #eef6fb;
  margin-bottom: 6.818%;
  padding: 8.182% 2.273% 7.955% 6.819%;
}

@media screen and (max-width: 767px) {
  .price_b {
    margin: 12.537% 0 0;
    padding: 4.478% .746% 4.478% 4.478%;
  }
}

.price_b dt {
  display: inline-block;
  font-weight: bold;
  margin-right: calc(51 / 400 * 100%);
}

@media screen and (max-width: 767px) {
  .price_b dt {
    font-size: 4vw;
    margin-right: 3.4em;
  }
}

.price_b dd {
  display: inline-block;
}

@media screen and (max-width: 767px) {
  .price_b dd {
    font-size: 4vw;
  }
}

.price_b dd .large {
  display: inline-block;
  font-size: 20px;
  font-weight: bold;
}

@media screen and (max-width: 767px) {

  .price_b dd .large,
  .price_b dd .small {
    font-size: 4.800vw;
    font-weight: 600;
  }
}

.details {
  color: #333333;
  font-size: 13px;
  line-height: 1.385;
}

@media screen and (max-width: 767px) {
  .details {
    font-size: 3.2vw;
    line-height: 1.5;
    margin-top: 1.417em;
  }
}

.details .red {
  color: #ff0043;
}

.btn_CV3 {
  margin-top: 55px;
}

@media screen and (max-width: 767px) {
  .btn_CV3 {
    margin-top: 12.4%;
  }
}

.btn_CV3 .btn_wrap {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .btn_CV3 .btn_wrap {
    display: block;
  }
}

.btn_CV3 .btn_wrap .btn_left,
.btn_CV3 .btn_wrap .btn_right {
  width: calc(450 / 960 * 100%);
}

@media screen and (max-width: 767px) {

  .btn_CV3 .btn_wrap .btn_left,
  .btn_CV3 .btn_wrap .btn_right {
    width: 100%;
  }

  .btn_CV3 .btn_wrap .btn_right {
    margin-top: 2.985%;
  }
}

.baton {
  background: url(/campaign/hokou/img/bg_baton.jpg) repeat;
  margin-bottom: 80px;
  padding: 90px 0 106px;
}

@media screen and (max-width: 767px) {
  .baton {
    margin-bottom: 50px;
    padding: 12% 0 14.933%;
  }
}

.baton .desc {
  color: #00509e;
  font-size: 21px;
  font-weight: 600;
  margin-top: 2px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .baton .desc {
    font-size: 4vw;
    line-height: 1.6;
    margin-top: 2.388%;
  }
}

.baton .desc_text {
  color: #000000;
  font-size: 16px;
  line-height: 1.75;
  margin-top: 19px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .baton .desc_text {
    font-size: 3.467vw;
    line-height: 1.077;
    margin-top: 7.313%;
  }
}

.baton .wrap_block {
  margin-top: 34px;
}

@media screen and (max-width: 767px) {
  .baton .wrap_block {
    margin-top: 7.613%;
  }
}

.baton .block {
  background: #ffffff;
  padding: 19px 40px 41px;
}

@media screen and (max-width: 767px) {
  .baton .block {
    padding: 11.94% 5.972% 14.925%;
  }
}


.baton .block:nth-child(n+2) {
  margin-top: 30px;
}

@media screen and (max-width: 767px) {
  .baton .block:nth-child(n+2) {
    margin-top: 16.269%;
    padding: 15.373% 5.972% 12.09%;
  }

  .baton .block:nth-child(n+2) .tag {
    max-width: 9.606em;
    padding: .242em 0 .061em;
  }
}

.baton .block .left {
  width: calc(387 / 880 * 100%);
}

@media screen and (max-width: 767px) {
  .baton .block .left {
    width: 100%;
  }
}

.baton .block .right {
  width: calc(493 / 880 * 100%);
}

@media screen and (max-width: 767px) {
  .baton .block .right {
    margin-top: 16.271%;
    width: 100%;
  }
}

.baton .block ul {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .baton .block ul {
    display: block;
  }

  .baton .block:nth-child(1) ul li {
    display: flex;
    justify-content: space-between;
  }

  .baton .block:nth-child(1) ul li:nth-child(2) {
    margin-top: 13.22%;
  }

  .baton .block:nth-child(1) ul li:nth-child(3) {
    margin-top: 11.186%;
  }

  .baton .block:nth-child(1) ul li>.photo {
    width: calc(299 / 590 * 100%);
  }

  .baton .block:nth-child(1) ul li>.text {
    letter-spacing: -.01em;
    width: calc(264 / 590 * 100%);
  }
}

.baton .block .tag {
  background: #0d6fb8;
  border-radius: 20px;
  color: #ffffff;
  display: inline-block;
  font-size: 16px;
  line-height: 1.75em;
  max-width: 11em;
  padding: 0.313em 0;
  text-align: center;
  width: 100%;
}

@media screen and (max-width: 960px) {
  .baton .block .tag {
    font-size: 1.667vw;
  }
}

@media screen and (max-width: 767px) {
  .baton .block .tag {
    border-radius: 40px;
    display: block;
    font-size: 4.4vw;
    margin: 0 auto;
    max-width: 11.091em;
    padding: .333em 0 .242em;
  }
}

.baton .block .right .tag {
	margin-left: -4px;
}

@media screen and (max-width: 767px) {
	.baton .block .right .tag {
		margin: 0 auto;
	}
}

.baton .block:nth-child(1) .text {
  color: #4c4948;
  font-size: 16px;
  letter-spacing: -.06em;
  line-height: 1.438;
  margin-top: 9px;
}

@media screen and (max-width: 960px) {
  .baton .block:nth-child(1) .text {
    font-size: 1.667vw;
  }
}

@media screen and (max-width: 767px) {
  .baton .block:nth-child(1) .text {
    font-size: 3.2vw;
    line-height: 1.533;
    margin-top: 5.593%;
  }
}

.baton .block .text span {
  font-weight: 600;
}

.baton .block .left ul li:nth-child(1) {
  width: calc(209 / 387 * 100%);
}

@media screen and (max-width: 767px) {
  .baton .block .left ul li:nth-child(1) {
    width: 100%;
  }
}

.baton .block .left ul li:nth-child(n+2) {
  width: calc(164 / 387 * 100%);

}

@media screen and (max-width: 767px) {
  .baton .block .left ul li:nth-child(n+2) {
    margin-top: 8.305%;
    width: 100%;
  }
}

.baton .block .left ul li:nth-child(2) .photo {
  border-image-repeat: round;
  border-image-slice: 2;
  border-image-source: url(../img/bg_border_top.png);
  border-image-width: 2;
  border-right: 2px solid transparent;
}

@media screen and (max-width: 767px) {
  .baton .block .left ul li:nth-child(2) .photo {
    border: none;
  }
}

.baton .block .right ul {
  padding-left: calc(25 / 493 * 100%);
}

@media screen and (max-width: 767px) {
  .baton .block .right ul {
    padding-left: 0;
  }
}

.baton .block .right ul li:nth-child(1) {
  width: calc(145 / 468 * 100%);
}

.baton .block .right ul li:nth-child(2) {
  width: calc(135 / 468 * 100%);
}

.baton .block .right ul li:nth-child(3) {
  width: calc(136 / 468 * 100%);
}

@media screen and (max-width: 767px) {
  .baton .block .right ul li {
    width: 100% !important;
  }
}

.baton .block .tags span {
  color: #333333;
  display: inline-block;
  font-size: 16px;
	font-weight: 600;
  margin-left: 1.063em;
  vertical-align: middle;
}

@media screen and (max-width: 960px) {
  .baton .block .tags span {
    font-size: 1.667vw;
  }
}

@media screen and (max-width: 767px) {
  .baton .block .tags span {
    font-size: 4vw;
    font-weight: 600;
    margin-left: 0;
    margin-top: 8.644%;
  }
}

.baton .block:nth-child(1) .inner {
  margin-top: 34px;
}

@media screen and (max-width: 767px) {
  .baton .block:nth-child(1) .inner {
    margin-top: 6.949%;
  }

  .baton .block:nth-child(1) .right .inner {
    margin-top: 10.847%;
  }
}

.baton .block:nth-child(2) .inner {
  margin-top: 23px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .baton .block:nth-child(2) .inner {
    display: flex;
    justify-content: space-between;
    margin-top: 4.746%;
  }

  .baton .block:nth-child(2) .inner .content_text {
    width: calc(295 / 590 * 100%);
  }

  .baton .block:nth-child(2) .inner .content_text ul li .photo {
    margin: 8.814% 0 0;
    width: 100%;
  }

  .baton .block:nth-child(2) .inner .photo {
    width: calc(279 / 590 * 100%);
  }
}

@media screen and (min-width: 768px) {
  .baton .block .content_text {
    position: absolute;
    bottom: 0;
    left: calc(33 / 880 * 100%);
    width: calc(847 / 880 * 100%);
  }
}

.baton .block .content_text ul {
  justify-content: left;
}

.baton .block .content_text ul li:nth-child(1) {
  margin-right: 3.306%;
  width: 26.919%;
}

@media screen and (max-width: 767px) {
  .baton .block .content_text ul li {
    margin-right: 0;
    width: 100% !important;
  }

  .baton .block .content_text ul li:nth-child(1) {
    margin-top: 56.61%;
  }

  .baton .block .content_text ul li:nth-child(2) {
    margin-top: 33.22%;
  }

  .baton .block .content_text ul li:nth-child(3) {
    margin-top: 27.797%;
  }
}

.baton .block .content_text ul li:nth-child(2) {
  margin-right: 4.723%;
  width: 36.364%;
}

.baton .block .content_text ul li:nth-child(3) {
  width: 27.627%;
}

.baton .block .content_text .title {
  border-bottom: 1px solid transparent;
  border-image-repeat: round;
  border-image-slice: 1;
  border-image-source: url(/campaign/hokou/img/bg_border_left.png);
  border-image-width: 1;
  border-top: 1px solid transparent;
  color: #333333;
  font-size: 18px;
  font-weight: 600;
  padding: .5em 0 .278em;
  text-align: center;
}

@media screen and (max-width: 960px) {
  .baton .block .content_text .title {
    font-size: 1.875vw;
  }
}

@media screen and (max-width: 767px) {
  .baton .block .content_text .title {
    font-size: 4vw;
    line-height: 1;
    padding: .233em 0 .1em;
  }
}

.baton .block .content_text .text {
  color: #4c4948;
  font-size: 16px;
  line-height: 1.438;
  margin-top: .813em;
}

@media screen and (max-width: 960px) {
  .baton .block .content_text .text {
    font-size: 1.667vw;
  }
}

@media screen and (max-width: 767px) {
  .baton .block .content_text .text {
    font-size: 3.2vw;
    line-height: 1.417;
    margin-top: .708em;
  }
}

.baton .block .content_text .photo {
  margin: 1px auto;
  width: calc(301 / 308 * 100%);
}

/************contact************/
.contact {
  overflow: hidden;
  padding: 50px 40px;
  background: #f2f7e8;
}

.contact .left {
  position: relative;
  float: left;
  width: calc(352/880 * 100%);
}

.contact .left:after {
  content: "";
  position: absolute;
  background: url(/campaign/hokou/img/line_right.png) left top repeat-y;
  top: 0;
  bottom: 6px;
  right: -37px;
  width: 2px;
}

.contact .right {
  float: right;
  width: calc(440/880 * 100%);
}

.contact .left li {
  position: absolute;
  display: table;
  width: 27px;
  height: 21px;
  float: none;
  margin: 0;
  border: 0;
}

.contact .left li a,
.contact .left li span {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  color: #fff;
  border-radius: 5px;
  font-size: 10px;
  font-weight: bold;
  padding: 0;
}

.contact .left li.gnav_link01 {
  top: 1px;
  right: 0;
  width: 67px;
  height: 37px;
}

.contact .left li.gnav_link01 a {
  background: #6077e6;
}

.contact .left li.gnav_link02 {
  top: 46px;
  right: 12px;
  width: 55px;
}

.contact .left li.gnav_link03 {
  top: 69px;
  right: 40px;
}

.contact .left li.gnav_link04 {
  top: 69px;
  right: 11px;
}

.contact .left li.gnav_link05 {
  top: 92px;
  right: 40px;
}

.contact .left li.gnav_link06 {
  top: 92px;
  right: 11px;
}

.contact .left li.gnav_link07 {
  top: 115px;
  right: 11px;
}

.contact .left li.gnav_link02 a,
.contact .left li.gnav_link03 a,
.contact .left li.gnav_link04 a,
.contact .left li.gnav_link05 a,
.contact .left li.gnav_link06 a,
.contact .left li.gnav_link07 a {
  background: #38aee7;
}

.contact .left li.gnav_link08 {
  top: 115px;
  right: 40px;
  width: 55px;
}

.contact .left li.gnav_link09 {
  top: 138px;
  right: 68px;
  height: 43px;
}

.contact .left li.gnav_link10 {
  top: 138px;
  right: 40px;
}

.contact .left li.gnav_link11 {
  top: 138px;
  right: 11px;
}

.contact .left li.gnav_link12 {
  top: 160px;
  right: 40px;
}

.contact .left li.gnav_link13 {
  top: 160px;
  right: 11px;
  height: 43px;
}

.contact .left li.gnav_link21 {
  top: 183px;
  right: 68px;
}

.contact .left li.gnav_link08 a,
.contact .left li.gnav_link09 a,
.contact .left li.gnav_link10 a,
.contact .left li.gnav_link11 a,
.contact .left li.gnav_link12 a,
.contact .left li.gnav_link13 a,
.contact .left li.gnav_link21 a {
  background: #2edbd8;
}

.contact .left li.gnav_link14 {
  top: 183px;
  right: 40px;
}

.contact .left li.gnav_link15 {
  top: 206px;
  right: 40px;
}

.contact .left li.gnav_link16 {
  top: 206px;
  right: 11px;
  height: 43px;
}

.contact .left li.gnav_link14 a,
.contact .left li.gnav_link15 a,
.contact .left li.gnav_link16 a {
  background: #27d97d;
}

.contact .left li.gnav_link17 {
  top: 115px;
  right: 97px;
}

.contact .left li.gnav_link18 {
  top: 138px;
  right: 125px;
}

.contact .left li.gnav_link19 {
  top: 138px;
  right: 96px;
}

.contact .left li.gnav_link20 {
  top: 160px;
  right: 96px;
  height: 43px;
}

.contact .left li.gnav_link22 {
  top: 206px;
  right: 125px;
}

.contact .left li.gnav_link23 {
  top: 206px;
  right: 96px;
}

.contact .left li.gnav_link24 {
  top: 206px;
  right: 68px;
}

.contact .left li.gnav_link17 a,
.contact .left li.gnav_link18 a,
.contact .left li.gnav_link19 a,
.contact .left li.gnav_link20 a,
.contact .left li.gnav_link22 a,
.contact .left li.gnav_link23 a,
.contact .left li.gnav_link24 a {
  background: #9adb58;
}

.contact .left li.gnav_link25 {
  top: 138px;
  right: 181px;
  height: 43px;
}

.contact .left li.gnav_link26 {
  top: 160px;
  right: 125px;
  width: 55px;
}

.contact .left li.gnav_link27 {
  top: 183px;
  right: 153px;
}

.contact .left li.gnav_link28 {
  top: 183px;
  right: 125px;
}

.contact .left li.gnav_link29 {
  top: 206px;
  right: 153px;
}

.contact .left li.gnav_link30 {
  top: 229px;
  right: 125px;
  width: 55px;
}

.contact .left li.gnav_link25 a,
.contact .left li.gnav_link26 a,
.contact .left li.gnav_link27 a,
.contact .left li.gnav_link28 a,
.contact .left li.gnav_link29 a,
.contact .left li.gnav_link30 a {
  background: #d6d600;
}

.contact .left li.gnav_link31 {
  top: 138px;
  left: 58px;
  height: 43px;
}

.contact .left li.gnav_link32 {
  top: 138px;
  left: 87px;
}

.contact .left li.gnav_link33 {
  top: 138px;
  left: 115px;
}

.contact .left li.gnav_link34 {
  top: 160px;
  left: 87px;
}

.contact .left li.gnav_link35 {
  top: 160px;
  left: 115px;
}

.contact .left li.gnav_link31 a,
.contact .left li.gnav_link32 a,
.contact .left li.gnav_link33 a,
.contact .left li.gnav_link34 a,
.contact .left li.gnav_link35 a {
  background: #edc12f;
}

.contact .left li.gnav_link36 {
  top: 190px;
  left: 87px;
}

.contact .left li.gnav_link37 {
  top: 190px;
  left: 115px;
}

.contact .left li.gnav_link38 {
  top: 213px;
  left: 87px;
}

.contact .left li.gnav_link39 {
  top: 213px;
  left: 115px;
}

.contact .left li.gnav_link36 a,
.contact .left li.gnav_link37 a,
.contact .left li.gnav_link38 a,
.contact .left li.gnav_link39 a {
  background: #ff9d57;
}

.contact .left li.gnav_link40 {
  top: 75px;
  left: 1px;
}

.contact .left li.gnav_link41 {
  top: 160px;
  left: 0;
}

.contact .left li.gnav_link42 {
  top: 160px;
  left: 29px;
}

.contact .left li.gnav_link43 {
  top: 183px;
  left: 0;
}

.contact .left li.gnav_link44 {
  top: 183px;
  left: 29px;
}

.contact .left li.gnav_link45 {
  top: 206px;
  left: 0;
}

.contact .left li.gnav_link46 {
  top: 206px;
  left: 29px;
}

.contact .left li.gnav_link47 {
  top: 229px;
  left: 0;
  width: 55px;
}

.contact .left li.gnav_link40 a,
.contact .left li.gnav_link41 a,
.contact .left li.gnav_link42 a,
.contact .left li.gnav_link43 a,
.contact .left li.gnav_link44 a,
.contact .left li.gnav_link45 a,
.contact .left li.gnav_link46 a,
.contact .left li.gnav_link47 a {
  background: #ff7d8a;
}

.contact .left .btn_link {
  margin-top: 151px;
}

.contact .right .tel {
  margin-bottom: 25px;
  text-align: center;
}

.contact .right .tel .txt {
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 10px;
}

.contact .right .tel .note1 {
  font-weight: normal;
  text-align: center;
  margin-top: 10px;
}

.contact .right .mail .txt {
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 10px;
}

.catalog {
  text-align: right;
  margin: 0 0 50px;
}

.catalog a {
  color: #666666;
  font-size: 20px;
  font-weight: bold;
}

.catalog a:hover {
  text-decoration: underline;
}


@media screen and (max-width: 767px) {
  #contact .section_inner {
    width: 100%;
    padding: 0;
  }

  .contact {
    background: #f2f7e8;
    overflow: hidden;
    padding: 25px 20px;
    color: #333333;
  }

  .contact .left {
    position: relative;
    width: 100%;
    padding-bottom: 25px;
    margin-bottom: 20px;
    background: url(/campaign/hokou/img/line_right_sp.png) repeat-x left bottom;
    background-size: auto 2px;
  }

  .contact .left .map_station {
    margin-bottom: 10px;
  }

  .contact .left .head_link {
    position: absolute;
    top: 0;
    width: 34.85%;
    margin-bottom: 0 !important;
  }

  .contact .left .btn_link {
    margin-top: 0;
  }
  
  .contact .left .btn_link.map_sp_btn {
    margin-top: 20px;
  }

  .map_sp_station li {
    width: calc(50% - 8px);
  }

  .contact .right {
    width: 100%;
  }

  .contact .right .tel {
    margin-bottom: 15px;
  }

  .contact .right .tel .txt {
    font-size: 19px;
    margin-bottom: 20px;
  }

  .contact .right .tel img {
    width: 281px;
  }

  .contact .right .tel .note1 {
    font-size: 13px;
  }

  .contact .right .mail .txt {
    font-size: 15px;
  }

  .footer_logo img {
    max-width: 100%;
    width: auto;
  }
}

/* contact */
#contact .left li span {
  background: #e0e0e0;
  color: #aaa;
}


@media screen and (max-width: 320px) {
.flow .accordion_tittle.ac:after, .flow .accordion_tittle:after {
  right: -10px;
}
.flow .title02 {
  font-size: 17px;
}
#perfect .section-inner {
  background-position: 0 75px;
}
#perfect .block_item:not(:last-child) {
  margin-bottom: 30px;
}
}


@media screen and (min-width: 768px) {
.flow .btn a {
  display: inline-block;
  margin-bottom: 26px;
}
.list_step dd {
  display: flex;
  justify-content: space-between;
}
.list_step dd .photo {
 width: calc(150/760*100%);
  margin-left: 30px;
}
.list_step dd .text {
 width: calc(544/760*100%);
  text-align: left;
  font-size: 16px;
}
}
@media screen and (min-width: 768px) and (max-width: 1023px) {

#perfect .section-inner {
  background-position: 16px 100px;
}
#perfect .block_item .text_block {
 width: calc(420/960 * 100%);
}
#perfect .block_item:nth-child(2) .text_block {
  width: 37%;
}
}
/*************footer****************/