.flow li{
    border: 1px solid #d7ba41;
    padding: 20px;
    margin-bottom: 95px;
    position: relative;
}
.flow li::after{
    content: "";
    padding: 22px;
    background: url(/school/image/fss/flow_arw01.svg) center top/15px no-repeat;
    position: absolute;
    bottom: -65px;
    left: 0;
    right: 0;
}
.flow li:last-child::after{ content: none;}
/*.flow li:first-child::after{
padding: 200px;
background: url(/school/image/fss/flow_arw02.svg) center top/15px no-repeat;
bottom: -430px;
right: -50%;
}*/
.flow li.taiken{ width: 50%;}
.flow li.taiken .btn01 a{
    width: 100%;
    margin: 40px auto 5px;
}
.flow li.taiken::before{
    content: "";
    padding: 22px;
    background: url(/school/image/fss/flow_arw01.svg) center top/15px no-repeat;
    position: absolute;
    top: -65px;
    left: 0;
    right: 0;
}
.flow li h3{
    font-size: 28px;
    /*    letter-spacing: .25em;*/
}
.flow li.pay h3{ margin-bottom: 20px;}
.flow li.pay .cashless-promotion {
    background-color: #fff;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 15px 40px;
    padding: 20px 20px 30px;
    border-top: 1px dashed #a0a0a0;
    border-bottom: 1px dashed #a0a0a0;
}
.flow li.pay .cashless-promotion img {
    width: 50px;
    height: 50px;
}
.flow li.pay .cashless-promotion .txt {
    font-size: 18px;
    text-align: center;
    line-height: 1.3;
    padding-left: 10px;
}
.flow li.pay .cashless-promotion .txt strong {
    font-weight: normal;
    font-size: 30px;
}
.flow li.pay .cashless-promotion .txt a {
    display: inline-block;
    text-decoration: underline;
    color: #333333;
    margin-top: 10px;
}
@media screen and (max-width: 599px) {
    .flow li.pay .cashless-promotion {
        margin: 20px 0;
        padding: 20px 10px;
        display: block;
        text-align: center;
    }
    .flow li.pay .cashless-promotion .txt {
        font-size: 16px;
        padding: 0;
        margin-top: 10px;
    }
    .flow li.pay .cashless-promotion .txt strong {
        font-size: 25px;
    }
}

.flow li.pay .detail{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 30px;
}
.flow li.pay .detail > div{
    width: 33%/* 48% */;
    padding: 0 25px;
    border-left: 1px solid #d7ba41;
}
.flow li.pay.cre .detail > div{ width: 48%;}

.flow li.pay .detail > div:first-child{ border-left: none;}
.flow li.pay .detail > div h4{
    text-align: center;
    font-size: 22px;
    font-weight: normal;
    margin-bottom: 130px;
    position: relative;
}
.flow li.pay .detail > div:first-child h4::after{
    content: "";
    padding: 40px;
    background: url(/school/image/fss/flow_icn01.svg) center top/73px no-repeat;
    position: absolute;
    top: 70px;
    left: 0;
    right: 0;
}
.flow li.pay .detail > div:nth-child(2) h4::after {
    content: "";
    padding: 40px;
    background: url(/school/image/logo_amazonpay.png) 50% 20%/200px no-repeat;
    position: absolute;
    top: 70px;
    left: 0;
    right: 0;
}
.flow li.pay.cre .detail > div:nth-child(2) h4::after{ background-size: 50% auto;}
.flow li.pay .detail > div:nth-child(3) h4::after,
.flow li.pay.cre .detail > div:nth-child(2) h4::after{
    content: "";
    padding: 40px;
    background: url(/school/image/fss/flow_icn02.svg) center top/68px no-repeat;
    position: absolute;
    top: 56px;
    left: 0;
    right: 0;
}
.flow li.pay .detail > div:nth-child(4) h4::after{
    content: "";
    padding: 40px;
    background: url(/school/image/fss/flow_icn03.svg) center top/43px no-repeat;
    position: absolute;
    top: 64px;
    left: 0;
    right: 0;
}
.flow li.start h3{
    width: 90%;
    margin: 80px auto 45px;
}
.flow li.start h3::after{
    content: "";
    display: block;
    margin-top: 20px;
    padding: 30px;
    background: url(/school/image/fss/flow_icn_webbook.svg) center center/contain no-repeat;
}
.flow li.start h4{
    text-align: center;
    color: #d7ba41;
    font-size: 25px;
    font-weight: normal;
    margin-bottom: 25px;
}
.flow li.start p{
    width: 90%;
    margin: 0 auto;
}
.flow li.start p + p{ padding-top: 20px;}

/* ==================
.application-method
================== */
.app.inner{ padding-bottom: 0;}
.application-method.inner{
  max-width: 1220px;
  padding-top: 0;
}
.application-method h3{
  font-size: 23px;
  text-align: center;
}
.application-method ul{
  display: inline-flex;
  justify-content: space-between;
  flex-wrap: wrap;
  vertical-align: middle;
}
.application-method ul li{
  width: 50%;
  border-left: 1px solid #d7ba41;
  text-align: center;
  padding: 40px 10px;
}
.application-method ul li h4{
  font-size: 22px;
  font-weight: normal;
  margin-bottom: 130px;
  position: relative;
}
.application-method ul li:first-child h4::after{
  content: "";
  padding: 40px;
  background: url(/school/image/fss/flow_icn05.svg) center top/78px no-repeat;
  position: absolute;
  top: 70px;
  left: 0;
  right: 0;
}
.application-method ul li:nth-child(2) h4::after{
  content: "";
  padding: 40px;
  background: url(/school/image/fss/flow_icn06.svg) center top/63px no-repeat;
  position: absolute;
  top: 70px;
  left: 0;
  right: 0;
}
.application-method ul li:nth-child(3) h4::after{
  content: "";
  padding: 40px;
  background: url(/school/image/fss/flow_icn07.svg) center top/59px no-repeat;
  position: absolute;
  top: 70px;
  left: 0;
  right: 0;
}
.application-method ul li:nth-child(4) h4::after{
    content: "";
    padding: 40px;
    background: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2269.636%22%20height%3D%2266.127%22%20viewBox%3D%220%200%2069.636%2066.127%22%3E%20%3Cpath%20id%3D%22line%22%20d%3D%22M38.516%2C69.549c-3.456%2C1.9-3.308-.9-3.16-1.759.088-.513.49-2.921.49-2.921a7%2C7%2C0%2C0%2C0-.11-3.085c-.384-.948-1.906-1.442-3.024-1.682-16.493-2.169-28.7-13.636-28.7-27.326%2C0-15.271%2C15.4-27.7%2C34.319-27.7s34.317%2C12.425%2C34.317%2C27.7C72.647%2C49.927%2C54.457%2C60.785%2C38.516%2C69.549ZM27.481%2C39.021a1.667%2C1.667%2C0%2C0%2C0-1.672-1.659H21.14V26.446a1.672%2C1.672%2C0%2C0%2C0-3.344%2C0V39.023a1.668%2C1.668%2C0%2C0%2C0%2C1.672%2C1.661h6.341A1.668%2C1.668%2C0%2C0%2C0%2C27.481%2C39.021Zm4.884-12.575a1.672%2C1.672%2C0%2C0%2C0-3.344%2C0V39.023a1.672%2C1.672%2C0%2C0%2C0%2C3.344%2C0Zm15.267%2C0a1.674%2C1.674%2C0%2C0%2C0-3.348%2C0v7.782l-6.5-8.776a1.687%2C1.687%2C0%2C0%2C0-1.337-.664%2C1.642%2C1.642%2C0%2C0%2C0-.531.085%2C1.66%2C1.66%2C0%2C0%2C0-1.144%2C1.574V39.025a1.676%2C1.676%2C0%2C0%2C0%2C3.351%2C0V31.246l6.5%2C8.776a1.677%2C1.677%2C0%2C0%2C0%2C1.868.577%2C1.651%2C1.651%2C0%2C0%2C0%2C1.144-1.574V26.446Zm10.262%2C4.629H53.226v-2.97h4.668a1.659%2C1.659%2C0%2C1%2C0%2C0-3.318H51.554a1.666%2C1.666%2C0%2C0%2C0-1.672%2C1.659V39.02a1.669%2C1.669%2C0%2C0%2C0%2C1.672%2C1.661h6.341a1.66%2C1.66%2C0%2C1%2C0%2C0-3.32H53.226v-2.97h4.668a1.66%2C1.66%2C0%2C1%2C0%2C0-3.32Z%22%20transform%3D%22translate(-3.511%20-4.582)%22%20fill%3D%22none%22%20stroke%3D%22%23d7ba41%22%20stroke-width%3D%221%22%2F%3E%3C%2Fsvg%3E') center top/68px no-repeat;
    position: absolute;
    top: 68px;
    left: 0;
    right: 0;
}
.application-method .btn a{
    display: block;
    max-width: 160px;
    background-color: #d7ba41;
    border-radius: 4px;
    color: #fff;
    font-feature-settings: "palt";
    padding: 8px 18px;
    margin: auto;
    position: relative;
}
.application-method .btn a::after{
    content: "";
    width: 1em;
    padding-top: 1em;
    background: url(/images/common/arrow.svg) center/contain no-repeat;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
}
.application-method .btn.arw_under a::after{
    transform: translateY(-50%) rotate(90deg);
}
.application-method ul li .phone{
  display: inline-block;
  color: #d7ba41;
  font-family: 'Josefin Slab', serif;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  padding-left: 30px;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2229.417%22%20height%3D%2219.302%22%20viewBox%3D%220%200%2029.417%2019.302%22%3E%3Cpath%20d%3D%22M0%2C88.032v3.009a17.345%2C17.345%2C0%2C0%2C1%2C6.328%2C1.183q.522.206%2C1.013.443a16.036%2C16.036%2C0%2C0%2C1%2C2.395-.918%2C17.609%2C17.609%2C0%2C0%2C1%2C4.973-.708%2C17.352%2C17.352%2C0%2C0%2C1%2C6.355%2C1.183q.522.206%2C1.013.443a16.049%2C16.049%2C0%2C0%2C1%2C2.4-.918%2C17.617%2C17.617%2C0%2C0%2C1%2C4.946-.708V88.032Z%22%20transform%3D%22translate(0%20-88.032)%22%20fill%3D%22%23d7ba41%22%2F%3E%3Cpath%20d%3D%22M320.59%2C210.6a3.657%2C3.657%2C0%2C0%2C0%2C5.7%2C3.033A3.65%2C3.65%2C0%2C0%2C0%2C327.9%2C210.6a3.12%2C3.12%2C0%2C0%2C0-.235-1.15%2C5.066%2C5.066%2C0%2C0%2C0-.728-1.24%2C9.246%2C9.246%2C0%2C0%2C0-2.695-2.246%2C9.941%2C9.941%2C0%2C0%2C0-2.213%2C1.692%2C5.494%2C5.494%2C0%2C0%2C0-1.259%2C1.928A3.053%2C3.053%2C0%2C0%2C0%2C320.59%2C210.6Z%22%20transform%3D%22translate(-302.17%20-199.19)%22%20fill%3D%22%23d7ba41%22%2F%3E%3Cpath%20d%3D%22M25.656%2C175.657a7.377%2C7.377%2C0%2C0%2C1%2C1.681%2C2.612%2C4.951%2C4.951%2C0%2C0%2C1%2C.293%2C1.647%2C5.553%2C5.553%2C0%2C1%2C1-11.106%2C0%2C5.267%2C5.267%2C0%2C0%2C1%2C.637-2.434%2C8.28%2C8.28%2C0%2C0%2C1%2C1.677-2.162%2C11.548%2C11.548%2C0%2C0%2C1%2C1.2-.984c-.29-.106-.588-.206-.894-.3a15.73%2C15.73%2C0%2C0%2C0-4.437-.63%2C15.513%2C15.513%2C0%2C0%2C0-5.332.926%2C11.123%2C11.123%2C0%2C0%2C1%2C1.544%2C1.321%2C7.382%2C7.382%2C0%2C0%2C1%2C1.68%2C2.612%2C4.945%2C4.945%2C0%2C0%2C1%2C.293%2C1.647%2C5.553%2C5.553%2C0%2C1%2C1-11.106%2C0%2C5.269%2C5.269%2C0%2C0%2C1%2C.636-2.434A8.282%2C8.282%2C0%2C0%2C1%2C4.1%2C175.319a11.516%2C11.516%2C0%2C0%2C1%2C1.2-.984c-.291-.106-.588-.206-.894-.3a15.737%2C15.737%2C0%2C0%2C0-4.41-.63v14.4H29.417v-14.4a15.517%2C15.517%2C0%2C0%2C0-5.3.926A11.118%2C11.118%2C0%2C0%2C1%2C25.656%2C175.657Z%22%20transform%3D%22translate(0%20-168.504)%22%20fill%3D%22%23d7ba41%22%2F%3E%3Cpath%20d%3D%22M64.118%2C210.6a3.657%2C3.657%2C0%2C0%2C0%2C5.7%2C3.033%2C3.651%2C3.651%2C0%2C0%2C0%2C1.613-3.033%2C3.129%2C3.129%2C0%2C0%2C0-.235-1.15%2C5.083%2C5.083%2C0%2C0%2C0-.728-1.24%2C9.254%2C9.254%2C0%2C0%2C0-2.695-2.246%2C9.932%2C9.932%2C0%2C0%2C0-2.212%2C1.692%2C5.494%2C5.494%2C0%2C0%2C0-1.259%2C1.928A3.049%2C3.049%2C0%2C0%2C0%2C64.118%2C210.6Z%22%20transform%3D%22translate(-60.434%20-199.19)%22%20fill%3D%22%23d7ba41%22%2F%3E%3C%2Fsvg%3E');
  background-repeat: no-repeat;
  background-size: 24px;
  background-position: left 3px;
}
.application-method ul li .phone a {
  color: #d7ba41;
}
.application-method ul li .caution_phone{
    font-size: 10px;
}
@media screen and (min-width: 600px) {
    .application-method .frame{
        display: grid;
        grid-template-columns: 20% 1fr;
    }
    .application-method h3{
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .application-method ul li{
        border-left: 1px solid #d7ba41;
        width: calc(100% / 4);
    }
}

@media screen and (max-width: 1024px) {
    .flow li h3{
        font-size: 26px;
        letter-spacing: 0;
    }
    .flow li.taiken .btn01 a{ font-size: 18px;}
}

@media screen and (max-width: 599px) {
    .flow li{ padding: 12px;}
    .flow li h3{ font-size: 16px;}
    .flow li.taiken .btn01 a{
        margin-top: 10px;
        padding: 10px 20px 10px 5px;
        font-size: 16px;
    }
    .flow li.pay h3{ margin-bottom: 10px;}
    .flow li.pay .detail{ margin-bottom: 10px;}
    .flow li.pay .detail > div,
    .flow li.pay.cre .detail > div{
        width: 100%;
        padding: 0;
        border-left: none;
        padding-bottom: 25px;
        border-bottom: 1px dashed #d7ba41;
        margin-bottom: 10px;
    }
    .flow li.pay .detail > div:last-child{
        padding-bottom: 0;
        border-bottom: none;
        margin-bottom: 0;
    }
    .flow li.pay .detail > div h4{
        margin-bottom: 30px;
        font-size: 18px;
        /*        padding-left: 60px;
        text-align: left;*/
    }
    /*    .flow li.pay .detail > div h4::before{
    content: "";
    padding: 15px;
    background: url(/images/common/arrow_fss.svg) right 15px/15px no-repeat;
    display: block;
    position: absolute;
    right: 10px;
}
    .flow li.pay .detail > div h4.active::before{
    transform: rotate(180deg);
    background-position: left;
}*/
    .flow li.pay .detail > div:first-child h4::after {
        padding: 25px;
        background-size: 48px auto;
        top: 40px;
    }
    .flow li.pay .detail > div:nth-child(2) h4::after{
        padding: 25px;
        background-size: auto 25px;
        top: 40px;
    }
    .flow li.pay .detail > div:nth-child(3) h4::after,
    .flow li.pay.cre .detail > div:nth-child(2) h4::after {
        padding: 25px;
        background-size: 45px auto;
        top: 40px;
    }
    .flow li.pay .detail > div:nth-child(4) h4::after {
        padding: 25px;
        background-size: 30px auto;
        top: 40px;
    }
    .flow li.pay .detail > div h4 + p{
        /*        display: none;*/
        padding-top: 25px;
    }
    .flow li.start {
        margin-bottom: 30px;
    }
    .flow li.start h3 {
        margin: 20px auto 0;
        padding-bottom: 15px;
    }
    .flow li.start h4{
        font-size: 16px;
        margin-bottom: 15px;
    }

    .application-method h3{
        margin-bottom: 20px;
    }
    .application-method ul li:nth-child(odd){ border-left: none;}
    .application-method ul li:nth-child(n+3){
        margin-top: 28px;
        position: relative;
    }
    .application-method ul li:nth-child(3)::before{
        content: "";
        width: 200%;
        padding-top: 1px;
        background-color: #d7ba41;
        position: absolute;
        left: 0;
        top: -14px;
    }

    .application-method ul li h4 {
        font-size: 16px;
        margin-bottom: 80px;
    }
    .application-method ul li:first-child h4::after{
        padding: 25px;
        background-size: 60px;
        top: 40px;
    }
    .application-method ul li:nth-child(2) h4::after{
        padding: 25px;
        background-size: 50px;
        top: 45px;
    }
    .application-method ul li:nth-child(3) h4::after{
        padding: 25px;
        background-size: contain;
        top: 40px;
    }
    .application-method ul li:nth-child(4) h4::after{
        padding: 25px;
        background-size: contain;
        top: 40px;
    }
    .application-method ul li .phone{
        font-size: 14px;
        background-size: 20px;
        background-position-y: top;
    }
    .application-method .caution_phone{
        text-align: left;
    }
}