/* Scss Document */
:root {
  --pc: 1000px;
  --sp: 999px;
  --fs48: 4.8rem;
  --fs42: 4.2rem;
  --fs36: 3.6rem;
  --fs28: 2.8rem;
  --fs24: 2.4rem;
  --fs20: 2.0rem;
  --fs18: 1.8rem;
  --fs16: 1.6rem;
  --fs14:1.4rem;
  --fs12:1.2rem; }

@media (max-width: 999px) {
  :root {
    --fs48: 2.4rem;
    --fs42: 2.4rem;
    --fs36: 2.2rem;
    --fs28: 2.0rem;
    --fs24: 1.8rem;
    --fs20: 1.6rem;
    --fs18: 1.4rem;
    --fs16: 1.4rem;
    --fs14: 1.2rem;
    --fs12: 1.0rem; } }
/* 
---------------------------------------
#flow01
---------------------------------------
*/
#flow01 .ttl {
  font-size: 5rem;
  text-align: center; }
  @media (max-width: 999px) {
    #flow01 .ttl {
      font-size: 2rem; } }
#flow01 .txt {
  text-align: center;
  font-size: 1.8rem; }
  @media (max-width: 999px) {
    #flow01 .txt {
      font-size: 1.6rem; } }

/* 
---------------------------------------
#flow02
---------------------------------------
*/
#flow02 {
  background: #F8F8F8;
  padding: 8rem 0 16rem; }
  @media (max-width: 999px) {
    #flow02 {
      padding: 4rem 0 6rem; } }
  #flow02 .box {
    padding: 4rem 10rem;
    background: #fff;
    margin-bottom: 2rem;
    position: relative;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
    position: relative; }
    @media (max-width: 999px) {
      #flow02 .box {
        padding: 2rem 2rem; } }
  #flow02 .number {
    position: absolute;
    left: 0;
    top: 0;
    padding: 0rem 2rem;
    background: #707070;
    color: #fff; }
    @media (max-width: 999px) {
      #flow02 .number {
        padding: 0 0.6rem;
        font-size: 1.2rem; } }
    #flow02 .number strong {
      margin-left: 0.4rem;
      font-size: 2.6rem;
      font-weight: 700; }
      @media (max-width: 999px) {
        #flow02 .number strong {
          font-size: 1.4rem; } }
  #flow02 .ttl {
    font-size: 3rem;
    margin-bottom: 1rem;
    text-align: center;
    font-weight: bold;
    color: #E33C0B; }
    @media (max-width: 999px) {
      #flow02 .ttl {
        font-size: 2rem;
        margin-bottom: 0.5rem; } }
  #flow02 .txt {
    text-align: center;
    line-height: 1.6; }
  #flow02 .ico3 {
    position: absolute;
    top: 50%;
    right: 12rem;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    width: 10rem;
    height: auto; }
    @media (max-width: 999px) {
      #flow02 .ico3 {
        position: absolute;
        top: 13%;
        right: -1rem;
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        width: 6rem;
        height: auto; } }
  #flow02 .boxs {
    margin: 0 auto;
    display: flex;
    justify-content: space-between; }
    @media (max-width: 999px) {
      #flow02 .boxs {
        flex-direction: column; } }
  #flow02 .telBox {
    width: 48%;
    background: #eee;
    border-radius: 1.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 2px solid #E33C0B;
    background: #fff;
    line-height: 1;
    padding: 2rem 0;
    color: #E33C0B; }
    @media (max-width: 999px) {
      #flow02 .telBox {
        width: 100%;
        padding: 1.6rem 0;
        margin-bottom: 1rem; } }
  #flow02 .telTtl {
    font-size: 1.8rem;
    font-weight: bold;
    color: #E33C0B;
    margin-bottom: 1rem; }
  #flow02 .tel {
    display: flex;
    align-items: center;
    font-size: 3.6rem;
    font-weight: 900;
    margin-bottom: 1rem; }
    @media (max-width: 999px) {
      #flow02 .tel {
        font-size: 3.2rem;
        margin-bottom: 0; } }
  #flow02 .tel img {
    margin-right: 1rem; }
    @media (max-width: 999px) {
      #flow02 .tel img {
        margin-right: 0.4rem;
        width: 2.4rem;
        height: auto; } }
  #flow02 .telTxt {
    font-size: 1.4rem;
    font-weight: 500;
    text-align: center;
    line-height: 1.5;
    color: #1A1311; }
  #flow02 .contactBtn {
    width: 48%;
    background: #E33C0B;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 1.5rem;
    color: #fff;
    font-size: 2rem;
    font-weight: bold;
    position: relative; }
    @media (max-width: 999px) {
      #flow02 .contactBtn {
        width: 100%;
        height: 7rem;
        font-size: 1.6rem; } }
    #flow02 .contactBtn:hover {
      background: #707070;
      transition: 0.6s all;
      opacity: 1; }
  #flow02 .ico1 {
    margin-right: 1rem; }
    @media (max-width: 999px) {
      #flow02 .ico1 {
        width: 2.4rem;
        height: auto; } }
  #flow02 .ico2 {
    position: absolute;
    right: 2rem; }
    @media (max-width: 999px) {
      #flow02 .ico2 {
        right: 1rem; } }
  #flow02 .underIcon {
    margin: 2rem auto; }
    @media (max-width: 999px) {
      #flow02 .underIcon {
        width: 6rem;
        height: auto;
        margin: 1rem auto; } }
