@charset "utf-8";
#flow {
  font-size: 16px;
}

#flow .step {
  margin-top: 30px;
}

#flow .step .image {
  margin-top: 15px;
  text-align: center;
}

#flow .step img {
  margin: 0 auto 0;
  display: block;
}

#flow .step .image p {
  margin-top: 15px;
}

#flow .step03 .image {
  margin-right: auto;
  margin-left: auto;
  position: relative;
}

#flow .step03 .image .txt01,
#flow .step03 .image .txt02 {
  width: 280px;
  position: absolute;
}

#flow .step03 .image .txt01 {
  bottom: 15px;
  left: 0;
}

#flow .step03 .image .txt02 {
  bottom: 0;
  right: 0;
  text-align: left;
}

#flow .imgBox {
  margin-top: 15px;
  line-height: 1.5;
}

#flow .imgBox:after {
  display: block;
  clear: both;
  content: "";
}

#flow .imgBox .image {
  margin-top: 0;
  margin-right: 30px;
  float: left;
}

/*------------------------------------------------------------
	sentence
------------------------------------------------------------*/
#flow .sentence01 {
  margin: 15px 0;
  padding: 0 15px;
  line-height: 1.75;
}

#flow .sentence01 p + p {
  margin-top: 15px;
}

/*------------------------------------------------------------
タブ
------------------------------------------------------------*/
#flow .tabList {
  margin-top: 30px;
  margin-bottom: 40px;
  margin-left: -10px;
}

#flow .tabList:after {
  display: block;
  clear: both;
  content: "";
}

#flow .tabList li {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  padding-left: 10px;
  width: 33.3%;
  float: left;
}

#flow .tabList [role="tab"] {
  padding: 25px 10px 20px;
  background-color: #eee;
  border: 1px solid #ccc;
  border-radius: 3px;
  display: block;
  position: relative;
  color: #333;
  cursor: pointer;
  -webkit-transition: border-color 300ms ease, background-color 300ms ease;
  transition: border-color 300ms ease, background-color 300ms ease;
}

#flow .tabList [role="tab"]:after {
  margin-top: -22px;
  width: 44px;
  height: 44px;
  background-repeat: no-repeat;
  -webkit-background-size: contain;
       -o-background-size: contain;
          background-size: contain;
  position: absolute;
  top: 50%;
  right: 10px;
  z-index: 10;
  content: "";
}

#tabList01:after {
  background-image: url(../img/flow/icon01_b.png);
}

#tabList02:after {
  background-image: url(../img/flow/icon02_b.png);
}

#tabList03:after {
  background-image: url(../img/flow/icon03_b.png);
}

#flow .tabList [role="tab"]:hover,
#flow .tabList [aria-selected="true"] {
  background-color: #ff6500;
  border-color: #ff6500;
  color: #FFF;
  font-weight: bold;
}

#flow .tabList #tabList01[role="tab"]:hover:after,
#flow .tabList #tabList01[aria-selected="true"]:after {
  background-image: url(../img/flow/icon01_a.png);
}

#flow .tabList #tabList02[role="tab"]:hover:after,
#flow .tabList #tabList02[aria-selected="true"]:after {
  background-image: url(../img/flow/icon02_a.png);
}

#flow .tabList #tabList03[role="tab"]:hover:after,
#flow .tabList #tabList03[aria-selected="true"]:after {
  background-image: url(../img/flow/icon03_a.png);
}

#flow .tabList [aria-selected="true"] {
  position: relative;
  cursor: text;
}

#flow .tabList [aria-selected="true"]:after {

}

#flow .tabList.is_w33 li {
  width: 33.3%;
}

#flow .tabBody[role="tabpanel"] {
  display: none;
}

#flow .tabBody[role="tabpanel"][aria-hidden="false"] {
  display: block;
  -webkit-animation: fade_ani 1s ease 0s;
          animation: fade_ani 1s ease 0s;
}

@-webkit-keyframes fade_ani {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fade_ani {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

