@charset "UTF-8";
/* ======================================================================
 setting
====================================================================== */
/* ======================================================================
 p_flow
====================================================================== */
.p_flow .l_content {
  padding: 50px 0 0;
}
.p_flow .l_container .l_main_visual {
  background: url(../img/flow/main_ttl_bg.png) bottom no-repeat;
  background-size: cover;
}
.p_flow .l_container .l_main {
  width: 100%;
}
.p_flow .l_container .l_main .intro .inner .box {
  text-align: center;
  background: white;
}
.p_flow .l_container .l_main .intro .inner .box .u_block_ttl {
  font-weight: normal;
  margin: 0 0 20px;
}
.p_flow .l_container .l_main .sec {
  padding: 30px 0 0;
}
.p_flow .l_container .l_main .sec .c_sec_ttl {
  margin: 0;
  -moz-transform: translateY(-50px);
  -ms-transform: translateY(-50px);
  -webkit-transform: translateY(-50px);
  transform: translateY(-50px);
}
.p_flow .l_container .l_main .sec .c_sec_ttl .main {
  line-height: 1;
}
.p_flow .l_container .l_main .flow {
  position: relative;
  height: 2980px;
  padding: 50px 0 0;
  background: url(../img/flow/water1.png) no-repeat right top, url(../img/flow/water2.png) no-repeat left 1500px, url(../img/flow/water3.png) no-repeat right bottom -70px;
}
.p_flow .l_container .l_main .flow .flowlist {
  position: relative;
  width: 1100px;
  height: 100%;
  margin: 0 auto;
  background: url(../img/flow/route_bg.gif) no-repeat center 190px;
}
.p_flow .l_container .l_main .flow .flowlist .point1 {
  position: absolute;
  top: 50px;
  left: 235px;
}
.p_flow .l_container .l_main .flow .flowlist .point2 {
  position: absolute;
  top: 800px;
  left: 0;
}
.p_flow .l_container .l_main .flow .flowlist .step {
  position: absolute;
}
.p_flow .l_container .l_main .flow .flowlist .step .sub {
  position: relative;
  display: inline-block;
  margin: 0 0 15px;
  padding: 0 0 10px;
}
.p_flow .l_container .l_main .flow .flowlist .step .sub:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 5px;
  content: '';
  background: url(../img/planning/ttlborder.png) repeat center top;
}
.p_flow .l_container .l_main .flow .flowlist .step .sub .eng {
  font-family: "Josefin Sans", "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "游ゴシック", YuGothic, Verdana, sans-serif;
  font-size: 3em;
  font-weight: normal;
  font-style: italic;
  margin-right: 15px;
}
.p_flow .l_container .l_main .flow .flowlist .step .sub .jp {
  font-size: 2.2em;
  font-weight: bold;
}
.p_flow .l_container .l_main .flow .flowlist .step._1 {
  top: 0;
  right: 0;
  width: 560px;
  height: 300px;
  padding: 110px 320px 0 0;
  text-align: right;
  background: url(../img/flow/stp1.png) no-repeat right top;
}
.p_flow .l_container .l_main .flow .flowlist .step._2 {
  top: 240px;
  left: 0;
  width: 600px;
  height: 300px;
  padding: 150px 0 0 320px;
  background: url(../img/flow/stp2.png) no-repeat left top;
}
.p_flow .l_container .l_main .flow .flowlist .step._3 {
  top: 450px;
  right: 0;
  width: 730px;
  height: 450px;
  padding: 200px 0;
  background: url(../img/flow/stp3.png) no-repeat right top;
}
.p_flow .l_container .l_main .flow .flowlist .step._4 {
  top: 860px;
  left: 80px;
  width: 650px;
  height: 300px;
  padding: 165px 0 0 320px;
  background: url(../img/flow/stp4.png) no-repeat left top;
}
.p_flow .l_container .l_main .flow .flowlist .step._5 {
  top: 1090px;
  right: 80px;
  width: 590px;
  height: 300px;
  padding: 160px 320px 0 0;
  text-align: right;
  background: url(../img/flow/stp5.png) no-repeat right top;
}
.p_flow .l_container .l_main .flow .flowlist .step._6 {
  top: 1350px;
  left: 0;
  width: 730px;
  height: 460px;
  padding: 140px 0 0 470px;
  background: url(../img/flow/stp7.png) no-repeat left top;
}
.p_flow .l_container .l_main .flow .flowlist .step._7 {
  top: 1710px;
  right: 0;
  width: 590px;
  height: 300px;
  padding: 190px 320px 0 0;
  text-align: right;
  background: url(../img/flow/stp8.png) no-repeat right top;
  background-size: 300px 300px;
}
.p_flow .l_container .l_main .flow .flowlist .step._8 {
  top: 2010px;
  left: 0;
  width: 530px;
  height: 300px;
  padding: 180px 0 0 320px;
  background: url(../img/flow/stp6.png) no-repeat left top;
}
.p_flow .l_container .l_main .flow .flowlist .step._9 {
  bottom: 70px;
  left: 0;
  width: 100%;
  height: 790px;
  padding: 410px 0 0 250px;
}
.p_flow .l_container .l_main .flow .flowlist .step._9 .jp {
  font-size: 3.9em;
}
.p_flow .l_container .l_main .flow .flowlist .step._9 .list {
  position: absolute;
  right: 0;
  top: 20px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: baseline;
  -moz-align-items: baseline;
  -ms-align-items: baseline;
  align-items: baseline;
}
.p_flow .l_container .l_main .flow .flowlist .step._9 .list li {
  margin: 0 10px;
}
.p_flow .l_container .l_main .btn_block {
  text-align: center;
  margin: 0 0 100px;
}
.p_flow .l_container .l_main .btn_block._contact {
  margin: 25px 0 0;
}

/*# sourceMappingURL=p_flow.css.map */
