@ryo tateguchi さん、こんにちは
@Sunity西田 正洋 さんがwebhookの組み合わせでの実現を説明されてますが、単体でやるとしたら、scoreのfieldをうまく活用するとできそうです。
1)
Formでに、"start date"に日付を入れてもらう。"period"に何日間隔か?を数値で入れてもらう。(start date, periodは適当につけたFieldの名前です。任意のフィールドでどうぞ。periodはtype がscore。start dateはdateを想定してます。)
2)
SC1(Smart Campaign)で、Flow : Change Data Value を利用して、"period"の数値を、field: "count"にコピーする。(countも任意のフィールドでどうぞ。countのtypeはscoreを想定してます)
値のコピーは、change data value でtokenを使うとできます (具体的には {{lead.period}} とchange data valueのnew valueに書きます)。
SC1のRunは、TriggerでFills Out Formを利用して、Form入力された直後にRunする仕組みで構わないかと。
3)
SC2は毎日1回繰り返しで走らせます。BatchのSchedule Recurrenceで繰り返してください。
SC2では"count"の値をまず -1 します(countの数値を1減らす)。これはFlow: Change Scoreを使います。
↓実際に入っているField名やTokenは違いますが、書くとこんな感じです。ヤヤコシイポイントとして、値のコピーは、Change Data Valueでないと出来ません。これはNew Valueでないと、Tokenを使えないからです。他方で、「マイナス1する」は、Change Scoreでないと出来ません。値の増減はChange Scoreでないと出来ないのです。なお、数値を指定して書き換えることは、どちらでも可能です。Change Score なら Change:に =50 と書けば 50になりますし(イコールをお忘れなく)、Change Data Valueは New Value:に 50 と書けば50になります。

4)
SC3も同じく1日1回繰り返します。
SC3は実際にEmailを送る仕組みです。countをSmart ListでFilterして0になっていたらSend Emailします。その後で、countを元の値に戻してあげます。(periodの値をcountにコピーする)
5)
スタート日 という点については、SC2とSC3のSmart Listで、start date で in past : 10 years といった設定を入れておき、start dateの日付がSCがRUNするより過去になったらSC2/SC3が動き始めるようにします。
6)
何らかのキッカケで配信停止 にすると思うので、その状態になったら、SC2/SC3の対象から外れるよう、同じくSC2/SC3のSmart Listに条件を足しておきます。
また、念の為、SC1/SC2/SC3は、最初のFormを入力した人に限る。といった条件を入れておいたほうが関係ない人にメールが行くのを防げたり(事故防止)、Marketoの処理を軽減させることに繋がりそうです。
大雑把な仕掛けはこんな感じでしょうか。
実際に全てを組み上げたわけでないので、穴があるかもしれませんがご了承ください。
もし詳細で詰まったら、時間あるときに、もう少し具体的にやってみますのでお知らせください。
以上、ご参考までに。
-Yamada